我正在拨打第三方API,我们只需要发送https://app/api即可。一切都工作得很好,然后我在我的请求中添加了另一个字段,看起来这个帖子有效,但是确认回来了它。所以我基本上使用Newtonsoft.Json来将JSON转换为格式良好的对象。所以基本上我有一个像这样的对象:
public class POCO
{
public int id { get; set;}
public string name { get; set;}
public DateTime promise_by {get; set;}
}
它工作正常,直到我添加'promise_by'并且看到我发现我的网络响应正在剥离现场。然而,如果我在Fiddler中手动执行相同的调用,它会立即起作用。现在我已经看到了类似的线程,但我很好奇你应该在Fiddler中寻找什么来更新WebRequest?就像通常的AHA一样!
到目前为止,我有一个类似的代码:
request = WebRequest.Create(uri) as HttpWebRequest;
request.ContentType = "application/json; charset=utf-8";
request.Credentials = CredentialCache.DefaultNetworkCredentials;
request.UserAgent = "";
request.Method = verb;
request.Headers.Set("Authorization", "Basic " + Convert.ToBase64String(Encoding.ASCII.GetBytes(this.Username + ":" + this._password)));
request.Headers.Add("X-Requested-With", "XMLHttpRequest");
就像我说它获取数据一样,它只是没有获得所有数据。但我知道Fiddler中的相同凭据可以很好地为我提供数据。我知道只是添加request.Credentials = CredentialCache.DefaultNetworkCredentials,让我得到更多细节。以下是我的意思的例子:
CSHARP: