我有自己的Twitter API,并且在尝试发布带有重音符号和其他变音符号的状态更新时,我收到了一些关于问题的电子邮件。我想对这些进行编码,以便状态更新仍然具有它们。
我知道有办法删除变音符号,但我想保留它。
我阅读了Twitter Counting Characters页面并注意到他们确实谈到了对变音符号的编码。我想在C#中这样做。我只是不确定该怎么做。
以下是Twitter API http://code.google.com/p/twitter-api/issues/detail?id=433
的原始错误报告我尝试过使用..
string oldStatus = "con eñe";
string newStatus = oldStatus.Normalize(NormalizationForm.FormD);
我已尝试使用FormC
,FormKC
和FormKD
,我遇到401 - Unauthorized
错误或Invalid Unicode value in one or more parameters
错误。
有什么想法吗?
答案 0 :(得分:1)
这有帮助吗?我测试了这个来自的应用程序,它在您的帖子中使用变音符号成功发布了我的更新(并且长度为140个字符)。
HttpWebRequest request = CreateRequest("https://twitter.com/statuses/update.xml", "POST",
username, password);
string str = HttpUtility.UrlEncode(status);
byte[] buffer = new UTF8Encoding(false, false).GetBytes("status=" + str);
using (Stream stream = request.GetRequestStream())
{
stream.Write(buffer, 0, buffer.Length);
}
request.GetResponse().Close();