HTTP请求(POST)在DLL库中无法正常工作?
问题描述:
我正尝试在DLL库中使用TweetSharp。HTTP请求(POST)在DLL库中无法正常工作?
当我在一个DLL库执行下面的代码,响应返回无效(417未知):
var verify = FluentTwitter.CreateRequest()
.AuthenticateWith("<HIDDEN>",
"<HIDDEN>",
"<HIDDEN>",
"<HIDDEN>")
.Statuses().Update("It works!");
var response = verify.Request();
当我执行在Windows应用程序相同的代码,响应正确返回。
是否有任何东西(配置)可以使用DLL库和Windows应用程序中的相同代码以不同方式处理HTTP请求(使用POST)?
答
可能是它的当前登录用户的相关
尝试登录与您的网站的应用程序池的用户,并再次
答
最有可能运行您的代码,该库具有“Expect100Continue”设置为true。它应该设置为false。
http://groups.google.com/group/twitter-api-announce/browse_thread/thread/7be3b64970874fdd
看起来好像这个库需要更新。这在10个月前发生了变化。
所以代码应该是这样的......
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(newURL);
request.Method = "POST";
request.ServicePoint.Expect100Continue = false;
request.ContentType = "application/x-www-form-urlencoded";
答
TweetSharp绝对处理Expect100Continue问题,所以别的东西在这里打球。你的政策文件是什么样的?如果您处于中等信任环境中,则需要确保您可以通过修改您的策略发送来自DLL的HTTP请求。