使用 Javascript Ajax 调用的 Azure 机器学习

Azure Machine Learning using Javascript Ajax call

我想知道是否可以使用 JavaScript Ajax.

调用 Azure 机器学习网络服务

Azure ML 提供了 C#、Python 和 R 的示例代码。

我确实尝试使用 JQuery Ajax 调用网络服务,但 returns 失败了。

我可以使用 python 脚本调用相同的服务。

这是我的 Ajax 代码:

  $.ajax({
        url: webserviceurl,
        type: "POST",           
        data: sampleData,            
        dataType:'jsonp',                        
        headers: {
        "Content-Type":"application/json",            
        "Authorization":"Bearer " + apiKey                       
        },
        success: function (data) {
          console.log('Success');
        },
        error: function (data) {
           console.log('Failure ' +  data.statusText + " " + data.status);
        },
  });

根据我的经验,这似乎是超时造成的,所以我认为你可以尝试参考SO线程Set timeout for ajax (jQuery)的答案来设置ajax请求的超时.

希望对您有所帮助。


有一个已回答的 SO 线程 与您的问题类似。觉得有用,试试吧。

由于未在 Azure ML Web 服务上启用 CORS,它不起作用。您可以使用 Azure API 管理包装 Azure ML Web 服务,可以从 JavaScript - https://azure.microsoft.com/en-us/documentation/articles/api-management-get-started/

调用

经过大量的 RnD,我终于能够使用一些变通方法调用 Azure ML。

在 Azure 上包装 Azure ML 网络服务 API 是一种选择。

但是,我所做的是创建了一个调用 Azure 网络服务的 python 网络服务。

所以现在我的 HTML 应用程序调用 python 网络服务,它调用 Azure ML 和 returns 数据到 HTML 应用程序。