我正在使用Text Analytics API通过传递JSON对象来检测情绪和分数。根据文档中提到的信息,如果我们得到200的响应,那么api将返回正确的结果和情绪评分。现在的问题是我得到的响应是200,但我没有得到用于进一步的重复的情绪分数
请求对象:
@IBAction func fechaSalida(_ sender: Any) {
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let vc:CalendarioViewController = storyboard.instantiateViewController(withIdentifier: "calendario") as! CalendarioViewController
vc.dateDelegate = self
self.window!.rootViewController = vc
}
下面是代码传递给JSON对象并调用webAPI
{ "documents": [{ "language": "en", "id": 1, "text": "I had a wonderful experience" }, { "language": "en", "id": 2, "text": "It was an Ugly picture" }] }
response object:
{
"Version": {
"Major": 1,
"Minor": 1,
"Build": -1,
"Revision": -1,
"MajorRevision": -1,
"MinorRevision": -1
},
"Content": {
"Headers": [{
"Key": "Content-Type",
"Value": ["application/json; charset=utf-8"]
}]
},
"StatusCode": 200,
"ReasonPhrase": "OK",
"Headers": [{
"Key": "Transfer-Encoding",
"Value": ["chunked"]
}, {
"Key": "x-ms-transaction-count",
"Value": ["1"]
}, {
"Key": "x-aml-ta-request-id",
"Value": ["f78d8964-a2a1-4b67-aaa5-1a92b6ea25f9"]
}, {
"Key": "X-Content-Type-Options",
"Value": ["nosniff"]
}, {
"Key": "apim-request-id",
"Value": ["0882ea1e-6c31-4a2c-b3c0-1963ec0734c1"]
}, {
"Key": "Strict-Transport-Security",
"Value": ["max-age=31536000; includeSubDomains; preload"]
}, {
"Key": "Date",
"Value": ["Sat, 01 Jul 2017 19:49:10 GMT"]
}],
"RequestMessage": {
"Version": {
"Major": 1,
"Minor": 1,
"Build": -1,
"Revision": -1,
"MajorRevision": -1,
"MinorRevision": -1
},
"Content": {
"Headers": [{
"Key": "Content-Type",
"Value": ["application/json"]
}, {
"Key": "Content-Length",
"Value": ["135"]
}]
},
"Method": {
"Method": "POST"
},
"RequestUri": "https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment",
"Headers": [{
"Key": "Ocp-Apim-Subscription-Key",
"Value": ["************************"]
}],
"Properties": {}
},
"IsSuccessStatusCode": true
}
以下是引用Microsoft代码和参考的链接:
https://westus.dev.cognitive.microsoft.com/docs/services/TextAnalytics.V2.0/oper ations / 56f30ceeeda5650db055a3c9
https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment
答案 0 :(得分:1)
我刚刚在这里做了一个测试,并且工作正常:
using System;
using System.Net.Http.Headers;
using System.Text;
using System.Net.Http;
using System.Web;
using System.IO;
namespace CSHttpClientSample
{
static class Program
{
static void Main()
{
MakeRequest();
Console.WriteLine("Hit ENTER to exit...");
Console.ReadLine();
}
static async void MakeRequest()
{
var client = new HttpClient();
var queryString = "";
// Request headers
client.DefaultRequestHeaders.Add("Ocp-Apim-Subscription-Key", "YOUR KEY IN HERE");
var json = "{ \"documents\": [ { \"language\": \"en\", \"id\": \"1\", \"text\": \"I had a wonderful experience\" }, { \"language\": \"en\", \"id\": \"2\", \"text\": \"It was an Ugly picture\" } ]}";
var uri = "https://westus.api.cognitive.microsoft.com/text/analytics/v2.0/sentiment?" + queryString;
HttpResponseMessage response;
// Request body
byte[] byteData = Encoding.UTF8.GetBytes(json);
using (var content = new ByteArrayContent(byteData))
{
content.Headers.ContentType = new MediaTypeHeaderValue("application/json");
response = await client.PostAsync(uri, content);
Console.WriteLine(response.Content.ReadAsStringAsync().Result);
}
}
}
}
输出
Hit ENTER to exit...
{"documents":[{"score":0.972635705189504,"id":"1"},{"score":0.0438970184772759,"id":"2"}],"errors":[]}