首页  >  问答  >  正文

使用GitHub账号登录时获取用户信息失败

在做GitHub登录时发现直接使用curl模拟get请求是获取不到用户信息的,但是粘出链接在浏览器直接访问时就可以返回信息,请教下在PHP中我该怎么去请求

阿彬阿彬2222 天前1170

全部回复(3)我来回复

  • 黑岩*手

    黑岩*手2018-08-30 08:40:30

    GitHub的文档中是说调用API,请求的header中需要带有User-Agent,所以直接 file_get_content 会出403,然后浏览器可以访问。解决的办法是,使用curl模拟get请求并在请求的header中加上User-Agent,值你可以从浏览器中复制过来。

    回复
    1
  • 阿彬

    已经解决了,就这种方法,谢老哥

    阿彬 · 2018-09-07 17:47:34
  • ringa_lee

    ringa_lee2018-08-29 09:30:39

    直接用file_get_content,简单明了

    回复
    0
  • 阿彬

    file_get_content用了但是报错403 file_get_contents(https://api.github.com/user?access_token=17a691fd9b7843166f7dc01342deac87dee0085c):无法打开流:HTTP请求失败! HTTP/1.0 403 禁止

    阿彬 · 2018-08-29 09:41:34
  • 取消回复