HTTP请求(POST)在DLL库中无法正常工作?

时间:2009-10-08 18:30:08

标签: c# httpwebrequest tweetsharp

我正在尝试在DLL库中使用 TweetSharp

当我在DLL库中执行以下代码时,响应返回invalid(417 Unknown):

var verify = FluentTwitter.CreateRequest()
    .AuthenticateWith("<HIDDEN>",
        "<HIDDEN>",
        "<HIDDEN>",
        "<HIDDEN>")
    .Statuses().Update("It works!");

var response = verify.Request();

当我在Windows应用程序中执行相同的代码时,响应会正确返回。

是否有任何东西(配置)可以使用DLL库和Windows应用程序中的相同代码以不同方式处理HTTP请求(使用POST)?

3 个答案:

答案 0 :(得分:1)

最有可能的是,该库将“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";

答案 1 :(得分:1)

TweetSharp肯定会处理Expect100Continue问题,所以其他方面也在这里发挥作用。您的政策文件是什么样的?如果您处于中等信任环境中,则需要通过修改策略来确保可以从DLL发送HTTP请求。

答案 2 :(得分:0)

可能是当前登录的用户相关

尝试使用您的网站应用程序池用户登录并再次运行您的代码