Javascript 如何使用Azure移动服务REST api?

Javascript 如何使用Azure移动服务REST api?,javascript,html,azure,azure-mobile-services,Javascript,Html,Azure,Azure Mobile Services,新的定制API脚本允许通过任何类型的连接进行大量定制 我发现这个网站描述了定制API var client = new WindowsAzure.MobileServiceClient('http://myservice.azure-mobile.net/', 'mykey'); client.invokeApi('query', { method: 'POST' }); 但我无法运行此代码。它应该会显示一条信息“你好,邮政世界!”。 我将代码放入HTML文件中

新的定制API脚本允许通过任何类型的连接进行大量定制

我发现这个网站描述了定制API

var client = new WindowsAzure.MobileServiceClient('http://myservice.azure-mobile.net/', 'mykey');
    client.invokeApi('query', {
        method: 'POST'
    });
但我无法运行此代码。它应该会显示一条信息“你好,邮政世界!”。 我将代码放入HTML文件中的标记中并运行了它,但什么也没发生


有什么帮助吗

您的呼叫正在呼叫您的服务,但它忽略了它的响应。假设您有一个名为“query”的自定义API(因为它是您传递给
invokeApi
)的API,其主体如下:

exports.post = function(request, response) {
    response.send(200, { message: 'Hello world' });
};
您的客户机代码正在调用它并(如果一切顺利)接收响应,但它没有对它做任何处理。有几种方法可以确定是否正在打电话。例如,您可以在API中添加日志条目并检查服务中的日志:

exports.post = function(request, response) {
    console.log('The API was called');
    response.send(200, { message: 'Hello world' });
};
或者,您可以使用网络工具(例如浏览器开发人员工具或Fiddler)查看是否发出了请求。或者您可以在客户端对结果执行某些操作:

var client = new WindowsAzure.MobileServiceClient('http://myservice.azure-mobile.net/', 'mykey');
client.invokeApi('query', {
    method: 'POST'
}).done(
    function(result) { alert('Result: ' + JSON.stringify(result)); },
    function(error) { alert('Error: ' + error); }
);
如果从浏览器调用API,需要注意的一点是,加载页面的域是否位于“配置”选项卡“跨源资源共享(cors)”部分下的“允许来自主机名的请求”列表中。如果不是,那么您可能会得到一个错误,而不是您想要的响应