C# 用“API响应”表示API响应;错误请求-协议错误“;关于已取得的成就而不是3501
我正在用C#和ASP.NET制作一个游戏。我有一个发送post请求的方法,它在所有请求(即登录、分数)中运行良好,当我试图给出一个已获得的成就时除外。在这种情况下,服务器返回的是错误的请求(状态-协议错误),而不是用户已经获得的(#3501)。。。。 这是从我的发送方法中剪下的C# 用“API响应”表示API响应;错误请求-协议错误“;关于已取得的成就而不是3501,c#,asp.net,facebook-graph-api,achievements,C#,Asp.net,Facebook Graph Api,Achievements,我正在用C#和ASP.NET制作一个游戏。我有一个发送post请求的方法,它在所有请求(即登录、分数)中运行良好,当我试图给出一个已获得的成就时除外。在这种情况下,服务器返回的是错误的请求(状态-协议错误),而不是用户已经获得的(#3501)。。。。 这是从我的发送方法中剪下的 public static string SendRequest(string sUrl, string sRequest,
public static string SendRequest(string sUrl,
string sRequest,
string sMethod,
string sContentType = "application/x-www-form-urlencoded")
{
HttpWebRequest request;
StreamReader reader;
string sResponse;
Encoding encoding = Encoding.UTF8; //I try different encoding without luck
switch (sMethod.ToUpper())
{
case "POST":
case "DELETE":
//Initialize the WebRequest
request = (HttpWebRequest)HttpWebRequest.Create(sUrl);
request.AllowAutoRedirect = false;
request.Method = sMethod.ToUpper();
request.ContentType = sContentType;
request.ServicePoint.Expect100Continue = false;
byte[] data = encoding.GetBytes(sRequest);
request.ContentLength = data.Length;
Stream stream =request.GetRequestStream();
stream.Write( data, 0, data.Length );
stream.Close();
break;
因此,为了获得一项新的成就,我将此方法称为:
发送请求(achievementURL、achievementParams、POST);
如果我让第二个调用图API返回错误的请求,而不是#3501
我可以无误地删除已获得的成就(SendRequest(achievementURL、achievementParams、删除
)
我尝试使用不同的编码,但没有任何运气。这可能是Graph API中的错误吗?!(Graph API Explorer工作正常)
任何帮助都是值得赞赏的“我尝试使用不同的编码,但没有任何运气。这可能是Graph API中的错误吗?!(Graph API Explorer工作正常)”
是的,我遇到了一个类似的问题,当API浏览器工作正常时,C#SDK返回了一个错误。当我等待修复时,我正在使用Javascript SDK进行在C#中失败的调用
您应该将其作为错误记录在“我尝试使用不同的编码,但没有任何运气。它可能是Graph API中的错误吗?!(Graph API Explorer工作正常)”
是的,我遇到了一个类似的问题,当API浏览器工作正常时,C#SDK返回了一个错误。当我等待修复时,我正在使用Javascript SDK进行在C#中失败的调用
您应该将其作为bug记录在