我有一个javascript对象要发送到服务器,如下所示:
var input = {a: 'aaa', b: 'bbb', c: 'ccc'};
我想在网址中发送'a'属性
http://localhost/rest/customer/aaa
对于Amplifyjs中的url替换功能,这很好,如下所示:
amplify.request.define('update-customer', 'ajax', {
url : 'rest/customer/{a}',
dataType: 'json',
type : 'PUT'
contentType : 'application/json; charset=utf-8;
});
amplify.request('update-customer', { a : input.a, data : input });
我正在努力解决的问题是,我希望将b和c属性作为json格式的表单数据发送为“请求有效负载”,但由于表单数据的发送方式如下,因此失败:
Request Payload :
data : {b : 'bbb', c : 'ccc'}
所以我想要实现的是删除“请求有效负载”中的'数据'键,如下所示:
Request Payload :
{b : 'bbb', c : 'ccc'}
我在REST客户端程序中对此进行了测试并取得了成功。
总结我的问题,如何使用 amplifyjs 发送没有密钥名称的请求正文中附加的数据? 提前谢谢。
答案 0 :(得分:0)
尝试:
amplify.request.define('update-customer', 'ajax', {
url: 'rest/customer/{a},
dataType: 'json',
type: 'PUT',
contentType: 'application/json; charset=utf-8',
data: {
b : '{b}',
c : '{c}'
}
});
amplify.request('update-customer', { a : input.a, data : input });
如果input.b或input.c为null,则此解决方案存在问题。 Check this post for further details