Javascript 如何通过ajax访问tastypie认证Web服务

Javascript 如何通过ajax访问tastypie认证Web服务,javascript,jquery,ajax,django,tastypie,Javascript,Jquery,Ajax,Django,Tastypie,我试图通过ajax访问下面的webservice,但它不起作用。 用户名:-根 密码:-rohit ajax函数 $.ajax({ type: "POST", url: "http://task.woo.gy/api/v1/article/?format=json", data: "{ 'username': 'root', 'password': 'rohit'}", contentType: "application/jso

我试图通过ajax访问下面的webservice,但它不起作用。 用户名:-根 密码:-rohit

ajax函数

  $.ajax({
        type: "POST",
        url: "http://task.woo.gy/api/v1/article/?format=json",
        data: "{ 'username': 'root', 'password': 'rohit'}",
        contentType: "application/json; charset=utf-8",
        success: ajaxCallSucceed_allorder,
        dataType: "json",
        failure: ajaxCallFailed_allorder
    });
 function ajaxCallSucceed_allorder()
 {
  alert('success');
 }
 function ajaxCallFailed_allorder()
 {
  alert('failed');
 }

让我们先不要在互联网上以明文形式发送用户名和密码。Tastypie具有API密钥身份验证机制,允许您使用用户和API密钥(无密码)登录。有一种方法可以自动为新用户创建API密钥,我相信有一个管理命令可以为现有用户创建密钥

至于Ajax调用。在url中将用户名和密钥作为get参数传递,或者使用授权标头。对于后一个选项,您可以使用:

beforeSend: function (xhr) {
    xhr.setRequestHeader ("Authorization", "Authorization: ApiKey <username>:<api_key>");

},
发送前:函数(xhr){
xhr.setRequestHeader(“授权”、“授权:ApiKey:和