【问题标题】:Azure Mobile Service and JavascriptAzure 移动服务和 Javascript
【发布时间】:2016-07-14 20:21:44
【问题描述】:

您好,我被卡住了,不知何故找不到解决方案。看起来很简单,但是,好吧。就这样吧。我在 Azure 中有一项移动服务,我想使用 javascript 访问该服务。我如何绕过 401 Unauthorized?我尝试使用 MS 提供的文档,但没有运气。这是我到目前为止所得到的(当然,将密钥添加到 url 是行不通的)我可以添加什么来让它工作?

var client = new WindowsAzure.MobileServiceClient(
"https://cdshop.azure-mobile.net/",
"vGpqzyApJXXXXXXXXblQCWne73"
);

var getJSON = function (url, callback) {
var xhr = new XMLHttpRequest();
xhr.open('get', url, true);
xhr.responseType = 'json';
xhr.onload = function () {
    var status = xhr.status;
    if (status == 200) {
        callback(null, xhr.response);
    } else {
        callback(status);
    }
};
xhr.send();
};


$(function () {
$('#clickme').click(function () {

    getJSON('http://cdshop.azure-mobile.net/api/cds/total?key=vGpqzyApJXXXXXXXXblQCWne73', function (err, data) {
if (err != null) {
    alert('Something went wrong: ' + err);
} else {
    alert('Your Json result is:  ' + data.result);
    result.innerText = data.result;
}
    });
});
});

【问题讨论】:

    标签: javascript authentication azure-mobile-services


    【解决方案1】:

    如果您要创建自己的 HTTP 请求,则需要使用您的应用程序密钥设置一个名为 X-ZUMO-APPLICATION 的请求标头,例如“vGpqzyApJXXXXXXXXblQCWne73”,用于设置为“应用程序”或“用户”的表和 API。 (假设您仍在使用移动服务;较新的应用服务不使用此 X-ZUMO-APPLICATION 标头。)为“用户”设置的表和 API 还需要带有用户身份验证令牌的 X-ZUMO-AUTH 请求标头。

    或者,您可以使用您在第一行创建的 MobileServiceClient,它会为您执行此操作。 This page 有调用 API 和表的示例。以您为例:

    client.invokeApi("cds", {
        body: null,
        method: "get"
    }).done(function (data) {
        alert('Your Json result is:  ' + data.result);
        result.innerText = data.result;
    }, function(error) {
        alert('Something went wrong: ' + error);
    });
    

    【讨论】:

      猜你喜欢
      • 2014-02-17
      • 2017-06-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-04-09
      相关资源
      最近更新 更多