简体   繁体   English

使用海报将POST请求发送到Azure ML Web服务

[英]sending POST request to azure ML Web service using poster

I have successfully deployed a web service using Azure ML and am able to get output both on Azure ML as well as a sample R client application. 我已经使用Azure ML成功部署了Web服务,并且能够在Azure ML以及示例R客户端应用程序上获得输出。

I would like to however get response using the firefox poster. 不过,我想使用firefox海报获得回应。

I have followed the instructions from the Azure page on deploying the web service and tried using the same request headers and parameters as follows 我已按照Azure页面上有关部署Web服务的说明进行操作,并尝试使用如下相同的请求标头和参数

Instructions from azure page 天蓝色页面上的说明 在此处输入图片说明

this is what I've tried on Poster 这就是我在海报上尝试过的 在此处输入图片说明 在此处输入图片说明

Error message 错误信息 在此处输入图片说明

My R Code which works 我的R代码有效

library("RCurl")
library("rjson")

# Accept SSL certificates issued by public Certificate Authorities
options(RCurlOptions = list(cainfo = system.file("CurlSSL", "cacert.pem", package = "RCurl")))

h = basicTextGatherer()
hdr = basicHeaderGatherer()


req = list(

        Inputs = list(


            "input1" = list(
                "ColumnNames" = list("Smoker", "GenderCD", "Age"),
                "Values" = list( list( "1", "M", "8" ),  list( "1", "M", "8" )  )
            )                ),
        GlobalParameters = setNames(fromJSON('{}'), character(0))
)

body = enc2utf8(toJSON(req))
api_key = "hHlKbffejMGohso5yiJFke0D9yCKwvcXHG8tfIL2d8ccWZz8DN8nqxh9M4h727uVWPz+jmBgm0tKBLxnPO4RyA=="
authz_hdr = paste('Bearer', api_key, sep=' ')

h$reset()
curlPerform(url = "https://ussouthcentral.services.azureml.net/workspaces/79f267a884464b6a95f5819870787918/services/e3490c06c73849f8a78ff320f7e5ffbc/execute?api-version=2.0&details=true",
            httpheader=c('Content-Type' = "application/json", 'Authorization' = authz_hdr),
            postfields=body,
            writefunction = h$update,
            headerfunction = hdr$update,
            verbose = TRUE
            )

headers = hdr$value()
httpStatus = headers["status"]
if (httpStatus >= 400)
{
    print(paste("The request failed with status code:", httpStatus, sep=" "))

    # Print the headers - they include the requert ID and the timestamp, which are useful for debugging the failure
    print(headers)
}

print("Result:")
result = h$value()
print(fromJSON(result))

My API key 我的API金钥

hHlKbffejMGohso5yiJFke0D9yCKwvcXHG8tfIL2d8ccWZz8DN8nqxh9M4h727uVWPz+jmBgm0tKBLxnPO4RyA==

How can I form a correct URL which works? 如何形成正确的网址?

The "Content to Send" section is incorrect, you have specified URL-encoded, while you need to put application/json. “要发送的内容”部分不正确,您已指定URL编码,同时需要放置application / json。

在此处输入图片说明

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM