我希望能够使用使用AmplifyJS的GET和消息体。
我的问题是如何通过AmplifyJS实现这一目标。
合成测试工作正常(Fiddler是我的测试客户)。但是,当我通过AmplifyJS执行时,"body“将添加到查询字符串中。(编辑:这是对底层jQuery "ajax“的限制吗,或者这是ajax的选择)
amplify.request.define('trickyGet', 'ajax', {
url: 'entity/{param}',
dataType: 'json',
type: 'GET',
contentType: '???'
});然后
amplify.request({
resourceId: 'trickyGet',
data: { param: 'paramVal', data: JSON.stringify({'complex1': 'complex1Val'}) },
//data: { param: 'paramVal', data: {'complex1': 'complex1Val'}) },
success: callbacks.success,
error: callbacks.error
});我尝试了各种组合,包括如何表示复杂的数据以及使用什么content-type。
如果我将type更改为POST (当然也更改了API的端点),那么一切都会正常工作(data在消息体中)。但是对于get,data被附加到查询字符串(由AplifyJS)。
发布于 2016-04-07 18:07:02
amplify.js使用jQuery的ajax()方法,这反过来限制了在get请求期间发送data的方式。
https://stackoverflow.com/questions/28883940
复制相似问题