Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/295.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# Yahoo profile API通过RestSharp发送JSONP结果_C#_Restsharp_Yahoo Api - Fatal编程技术网

C# Yahoo profile API通过RestSharp发送JSONP结果

C# Yahoo profile API通过RestSharp发送JSONP结果,c#,restsharp,yahoo-api,C#,Restsharp,Yahoo Api,当我使用带有xml值的参数格式调用Yahoo用户配置文件API时,我遇到了一个奇怪的问题Yahoo正在发送JSONP(JSON包含括号();)结果,但当我发送此请求时,尽管Google chrome的邮递员插件Yahoo API正在发送xml结果 空气污染指数为: {guid}/配置文件 文件: 我的代码 public string RestApiInvoke(string url, TRANSPORT_METHOD method, Dictionary<string, string&g

当我使用带有xml值的参数格式调用Yahoo用户配置文件API时,我遇到了一个奇怪的问题Yahoo正在发送JSONP(JSON包含括号
();
)结果,但当我发送此请求时,尽管Google chrome的邮递员插件Yahoo API正在发送xml结果

空气污染指数为:

{guid}/配置文件

文件:

我的代码

 public string RestApiInvoke(string url, TRANSPORT_METHOD method, Dictionary<string, string> data, Dictionary<string, string> headers)
        {
            var client = new RestClient(url);
            RestRequest request;

            if (method == TRANSPORT_METHOD.POST)
            {
                request = new RestRequest(Method.POST);
            }
            else
            {
                request = new RestRequest(Method.GET);
            }

            if (data.IsNotNullOrEmpty())
            {
                foreach (var item in data)
                {
                    request.AddParameter(item.Key, item.Value);
                }
            }

            if (headers.IsNotNullOrEmpty())
            {
                foreach (var item in headers)
                {
                    request.AddHeader(item.Key, item.Value);
                }
            }

            IRestResponse response = client.Execute(request);

            return response.Content;
        }
publicstringrestapiinvoke(字符串url、传输方法、字典数据、字典头)
{
var client=新的RestClient(url);
重新请求请求;
if(method==TRANSPORT\u method.POST)
{
请求=新的重新请求(方法POST);
}
其他的
{
请求=新的重新请求(Method.GET);
}
if(data.IsNotNullOrEmpty())
{
foreach(数据中的var项)
{
request.AddParameter(item.Key,item.Value);
}
}
if(headers.IsNotNullOrEmpty())
{
foreach(标题中的变量项)
{
request.AddHeader(item.Key,item.Value);
}
}
IRestResponse response=client.Execute(请求);
返回响应。内容;
}

我得到了答案,只设置了
Accept
标题
text/xml
,实际上RestSharp使用了类似于
application/json text/html text/xml
的Accept,所以Yahoo选择第一个并发送JSONP结果。我已经使用以下代码手动设置了它

headers.Add("Accept", "text/xml");