我在本地机器上有一个正在工作的javascript适配器在MobileFoundation8.0beta中执行POST
请求,并向MobileFirst Foundation8.0GA版本进行了迁移。
在这个问题中,我遵循了答案步骤:How to move a MFP 8 Beta Mobile App to the MFP 8 GA Version?
现在,我将适配器上传到MobileFirst服务器上。我使用swagger测试了适配器POST
,它成功了,如下图所示:
当我从移动设备执行带有POST的适配器时,在调试chrome时得到以下错误:
当从客户端使用GET
命令时,适配器本身也在工作。
问题是如何在客户机中使用post命令?
客户端适配器调用实现:
发布不工作的
var sendFeedbackRequest = new WLResourceRequest(
"/adapters/SendFeedback/sendFeedback",
WLResourceRequest.POST);
sendFeedbackRequest.setQueryParameter("params",[ExchangeData.feedback.body.user,ExchangeData.feedback.body.feedback]);
获得工作
var sendFeedbackRequest = new WLResourceRequest(
"/adapters/SendFeedback/sendFeedback",
WLResourceRequest.GET);
sendFeedbackRequest.setQueryParameter(ExchangeData.feedback.body.user,ExchangeData.feedback.body.feedback);
适配器实现:
function sendFeedback(user, feedback) {
var document = {
body: {
user: user,
feedback: feedback
}
};
MFP.Logger.warn("User feedback inputs " + JSON.stringify(document));
var requestStructure = {
method : 'POST',
returnedContentType : 'plain',
path : 'submitFeedback',
body: {
contentType:'application/json; charset=UTF-8',
content: JSON.stringify(document)
}
};
MFP.Logger.warn("Preparing request structure " + JSON.stringify(requestStructure));
return MFP.Server.invokeHttp(requestStructure);
}
发布于 2016-07-12 06:39:30
来自@Idan的基础教程的链接帮助修复了我正在使用的适配器。
"sendFormParameters(formParams)“而不再是"setQueryParameter("params",用户,反馈)”
以下是客户机的工作代码:
var formParams = {"params":"['" + theUser + "','" +
theFeedbackInformation + "']"};
console.log('>>> Feedback feedbackInformation: ', formParams);
var sendFeedbackRequest = new WLResourceRequest(
"/adapters/SendFeedback/sendFeedback",
WLResourceRequest.POST);
sendFeedbackRequest.sendFormParameters(formParams);
https://stackoverflow.com/questions/38269988
复制相似问题