【发布时间】:2014-09-14 12:55:49
【问题描述】:
我有 php 代码,它工作正常,但客户希望将其转换为 javascript。 我有一个 web api 服务 url,我需要通过 username:password 授权,然后将一个 json 对象发布到 web api url 以接收数据(也是 json 类型)。
这是我的 php 代码:
curl_setopt($ch, CURLOPT_URL, $MyWebApiUrl);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLINFO_HEADER_OUT, true);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json' )
);
curl_setopt($ch, CURLOPT_HTTPAUTH, CURLAUTH_BASIC); // curl authentication
curl_setopt($ch, CURLOPT_USERPWD, "$Username:$Password"); // curl authentication
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS,$MyPostJsonObject);
$str= curl_exec($ch);
curl_close($ch);
$data = json_decode($str)
这是我目前的 javascript 代码
$.ajax({
type: 'POST',
url: MyWebApiUrl,
beforeSend: function (xhr) { xhr.setRequestHeader("Authorization", "Basic XXXXXXXXXX");},
data: JSON.stringify(MyPostJsonObject),
contentType: 'application/json; charset=utf-8',
dataType: 'json',
success: function (data) {
alert(data.d);
},
error: alert("An error occurred: ")
});
我总是收到“发生错误:”。
希望您能提供帮助。谢谢。
【问题讨论】:
标签: javascript php json post authorization