Swagger为Microsoft Cognative Services Recommendations生成了API

时间:2016-12-02 14:32:55

标签: azure

在调用用于Microsoft Cognitive Services Recommendations API方法Uploadacatalogfiletoamodel(modelID,catalogDisplayName,accountKey);的Swagger API生成方法时,我似乎无法弄清楚如何包含CSV文件内容。我已经尝试将catalogDisplayName设置为目录文件的完整路径,但是我得到了"(EXT-0108)传递的参数无效。"

当调用任何需要HTTP正文内容的Cog Svcs API时,如果暴露的API没有正文参数,我该如何包含正文内容?

1 个答案:

答案 0 :(得分:0)

我猜,Swagger无法帮助您测试需要通过表单传递数据的函数。我想如果你知道正确的标题,那么在表单数据中发送CSV内容就可以了。

我与nuGet合作,名为" Microsoft.Net.Http"和代码看起来像

HttpContent stringContent = new StringContent(someStringYouWannaSend);
HttpContent bytesContent = new ByteArrayContent(someBytesYouWannaSend);
using (var client = new HttpClient())
using (var formData = new MultipartFormDataContent())
{
    formData.Add(stringContent, "metadata", "metadata");
    formData.Add(bytesContent, "bytes", "bytes");
    HttpResponseMessage response = client.PostAsync(someWebApiEndPoint.ToString(), formData).Result;
    if (!response.IsSuccessStatusCode)
    {
        return false; //LOG
    }
    string responseContent = response.Content.ReadAsStringAsync().Result;
    jsonResult= JsonConvert.DeserializeObject<someCoolClass>(responseContent);
    return true;
}

对于那些无法编译的变量感到抱歉。希望你能弄清楚这一点。