首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >禁止Gravatar json配置文件请求403

禁止Gravatar json配置文件请求403
EN

Stack Overflow用户
提问于 2015-02-14 21:49:05
回答 1查看 689关注 0票数 3

我目前正在通过编写一个C#应用程序来使用gravatar。

首先,我试着拍下我的头像照片。啊,真灵。

在此之后,我试图获得配置文件QR代码。啊,真灵。

现在,我要用json检索我的个人资料。我跟踪了网站的指示,我写了这样的话:

代码语言:javascript
复制
using (var web = new HttpClient())
{
    using (var response = await web.GetAsync("http://www.gravatar.com/205e460b479e2e5b48aec07710c08d50"))
    {
        // ...

每次我尝试,我都会得到一个错误403。但是,当我将url复制到我的web浏览器中时,或者如果我做了wget,它可以很好地返回预期的结果。

我也试过这样做,但我也犯了错误:

代码语言:javascript
复制
var request = WebRequest.Create("http://www.gravatar.com/205e460b479e2e5b48aec07710c08d50.json");
using (var response = request.GetResponse())
{
    // ...

有人知道我的做法有什么问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-14 22:35:55

在本例中,它不喜欢您没有传递用户代理HTTP头(我认为您不能作为WebRequest传递它,所以我们将它转换为HttpWebRequest):

代码语言:javascript
复制
var request = (HttpWebRequest)WebRequest.Create("http://www.gravatar.com/205e460b479e2e5b48aec07710c08d50.json");
        request.UserAgent = "Whatever user agent you'd like to use here...";
using (var response = request.GetResponse())
{
// ...

编辑:它可能会帮助您在未来使用Fiddler,以便您可以尝试复制您的浏览器的行为。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28520689

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档