Привет, я остро нуждаюсь в помощи здесь,
Я делаю веб-запрос и получаю строку json с Response.ContentLenth=2246
, но когда я анализирую ее в строке, она дает только несколько 100 символов, яобнаружил, что он получает только значения меньше 964. длина строки по-прежнему 2246, а оставшиеся значения составляют всего (\0)
null
символов.Он также выдает ошибку Unterminated string passed in. (2246):
в следующей строке
FacebookFeed feed = sr.Deserialize<FacebookFeed>(data);
Он работает нормально, если поток ответов содержит символы менее 964 символов.
Ниже приводится выдержка из полной ошибки кода.в последней строке.
System.Web.Script.Serialization.JavaScriptSerializer sr = new System.Web.Script.Serialization.JavaScriptSerializer();
System.Net.HttpWebRequest req = (System.Net.HttpWebRequest)System.Net.HttpWebRequest.Create(@"https://graph.facebook.com/100000570310973_181080451920964");
req.Method = "GET";
System.Net.HttpWebResponse res = (System.Net.HttpWebResponse)req.GetResponse();
byte[] resp = new byte[(int)res.ContentLength];
res.GetResponseStream().Read(resp, 0, (int)res.ContentLength);
string data = Encoding.UTF8.GetString(resp);
FacebookFeed feed = sr.Deserialize<FacebookFeed>(data);
приведена ошибка
Unterminated string passed in. (2246): {"id":"100000570310973_1810804519209........ (with rest of data in the string data including null chars)
Ниже приведена форма классов, используемых в моем коде:
public class FacebookFeed
{
public string id { get; set; }
public NameIdPair from { get; set; }
public NameIdPair to { get; set; }
public string message { get; set; }
public Uri link{get;set;}
public string name{get; set;}
public string caption { get; set; }
public Uri icon { get; set; }
public NameLinkPair[] actions { get; set; }
public string type { get; set; }
public NameIdPair application { get; set; } //Mentioned in Graph API as attribution
public DateTime created_time { get; set; }
public DateTime updated_time { get; set; }
public FacebookPostLikes likes { get; set; }
}
public class NameIdPair
{
public string name { get; set; }
public string id { get; set; }
}
public class NameLinkPair
{
public string name { get; set; }
public Uri link{get; set;}
}
public class FacebookPostLikes
{
public NameIdPair[] data { get; set; }
public int count { get; set; }
}