将curl查询转换为jQuery.ajax()
Convert a curl query to jQuery.ajax()
我有一个curl命令,可以很好地工作。这是对coldfusion服务器的查询,返回WDDX:
curl --user 'adminUser:adminPass' 'http://blablabla/app.cfc?method=isSusbscribed&newsletterId=2222&language=en&email=anemal@mail.com'
结果是:
<wddxPacket version='1.0'><header/><data><boolean value='true'/></data></wddxPacket>
这意味着具有给定电子邮件的用户接收具有id 2222的时事通讯。
现在,我正试图用js脚本中的Ajax编写相同的命令:
我试过这样做:
$.ajax({url:'http://blablabla/app.cfc?method=isSusbscribed&newsletterId=2222&language=en&email=anemal@mail.com'
,username:'adminUser'
,password:'adminPass'})
.done(function(res){
jRes=$(res).find('boolean[value]');
if(jRes.length == 1) inputElem.prop('checked', jRes.attr('value')=='true');
}).always(function(res,text){
console.log(res);
console.log(text);
})
;
但它不起作用。
我的目标是,如果用户注册了时事通讯,则将开关置于ON位置。
可能查询的语法不正确,我认为问题与身份验证有关。
有人能帮我吗?感谢
很确定,当您在curl请求中执行--user
时,它使用的是基本身份验证。因此,您需要在jQuery调用中使用基本身份验证。您还需要对您的用户名和密码进行Base64编码。类似这样的东西:
$.ajax({
url:'...',
beforeSend: function(xhr) {
xhr.setRequestHeader("Authorization", "Basic YWRtaW5Vc2VyOmFkbWluUGFzcw==");
}
}).done(function(res){
// handle success...
});
相关文章:
- 在FrontEndphp-ajax-jquery中验证reCaptcha-google
- AJAX jquery json将数组发送到php
- 如何使用Ajax/jQuery设置cookie
- PHP/Ajax/jquery/JON-在Ajax Post之后将echo文本中的一部分作为变量返回
- 如何使用Ajax JQuery.ech()获取JSON值
- 使用springform时,如何在ajax/jquery中获取复选框值
- JSP AJAX jQuery填充表问题
- Piping Value: Ajax + JQuery
- 使用javascript Without Ajax/Jquery在特定行中启用文本框
- 在AJAX jQuery加载()之后运行jQuery代码
- 具有动态更新的实时标题 (AJAX+jQuery)
- ajax/jQuery Youtube 播放列表推送
- AJAX jQuery Avatar Uploading
- 全局变量 - AJAX jQuery
- Ajax jquery mysqli update
- 获取剩余时间和上传文件速度 - ajax jquery/js
- 使用ajax/jquery绑定Json数据
- TypeError Obj.root是未定义的ajax jquery
- 当数据类型为XML时,如何将url参数传递给AJAX jquery
- 在ajax Jquery之后无法获取隐藏字段的值