【问题标题】:HTTP Error 403 Forbidden with urllib2 but not with urllib with facebook graph apiHTTP 错误 403 禁止使用 urllib2,但不使用 urllib 和 facebook graph api
【发布时间】:2011-09-20 20:24:46
【问题描述】:

我有以下带有 urllib2 的代码,它打印 HTTP 错误 403:禁止但如果我使用 urllib 来获取 url,我看不到任何错误,并且我确实得到了我的朋友列表。两种情况下使用的访问令牌相同。

url = 'https://graph.facebook.com/me/friends/'
params = {'access_token': 'a valid access-token...', 'fields': 'id,name,birthday'}
req = urllib2.Request(url, data=urllib.urlencode(params))
try:
  con = urllib2.urlopen( req )
  print con.read()
except Exception as excp:
  print excp.read()

请提出可能的问题。

【问题讨论】:

    标签: python facebook-graph-api urllib2


    【解决方案1】:

    这个问题现在解决了。问题是请求应该是 GET 而不是 POST,因此所有查询参数都应该使用 url 传递,而不是作为 POST 数据传递。所以在我的情况下,为了结交朋友,代码看起来像这样:

    url = 'https://graph.facebook.com/me/friends/'
    params = {'access_token': 'a valid access-token...', 'fields': 'id,name,birthday'}
    
    try:
      con = urllib2.urlopen( url + '?' + urllib.urlencode(params))
      print con.read()
    except Exception as excp:
      print excp
    

    希望对某人有所帮助。

    【讨论】:

    • 您可以接受自己的答案。点击绿色箭头关闭已回答的问题
    猜你喜欢
    • 2013-03-15
    • 2016-06-20
    • 2021-10-10
    • 2018-01-03
    • 1970-01-01
    • 2012-10-29
    • 1970-01-01
    • 2016-12-23
    • 1970-01-01
    相关资源
    最近更新 更多