如何在Coderwall上进行“使用Github注册”按钮?

时间:2011-08-30 01:44:42

标签: oauth github github-api

是否有任何关于使用github对我网站上的用户进行身份验证的文档?最好是PHP。

与此处的按钮类似:http://coderwall.com/

2 个答案:

答案 0 :(得分:16)

是的,它已记录在GitHub API OAuth sectiondocumentation中。

Github的文档指南中也有an example implementation

答案 1 :(得分:10)

Github提供并由Adrian Petrescu分享的例子很棒,而且很简单。

但是,我发现大多数OAuth示例都缺少两件事:

  1. 如何创建一个正确的登录....'页面上的按钮。听起来很简单,但如果你谷歌周围,你会遇到大多数CSS黑客,这是不理想的
  2. 一个沙箱,其中包含已经启动并运行的所有OAuth代码,以便您可以围绕它进行更好的理解。如果没有这个,OAuth新手必须花费数小时尝试设置不同的部分(OAuth提供商应用程序,前端,后端),然后才能开始使用。更有可能的是,她可能会在其中一个部分犯错,并花费数小时进行调试。
  3. 所以我们创建了这个jsfiddle(https://jsfiddle.net/dg9h7dse/30/),并附带coderwall的详细说明。您可以立即使用此功能测试OAuth提供商的API端点。

    我在这里总结一下:

    1. 创建一个不错的社交按钮

    2. ```

      <a id="github-button" class="btn btn-block btn-social btn-github">
          <i class="fa fa-github"></i> Sign in with GitHub
      </a>
      

      ```

      1. 为了让我们将演示代码放在jsfiddle上供人们使用,我们需要一个前端唯一的OAuth解决方案,所以我们使用https://oauth.io,它只有一个Javascript前端库({{ 3}})与服务一起使用。
      2. 注意:https://github.com/oauth-io/oauth-js是一项付费服务​​,但您可以在不编写后端代码的情况下与数百个(?)OAuth提供程序集成。

        我们需要做的就是将我们不错的社交登录按钮绑定到调用OAuth服务提供商的Javascript片段。

        ```

        $('#github-button').on('click', function() {
            // Initialize with your OAuth.io app public key
            OAuth.initialize('YOUR OAUTH.IO PUBLIC KEY');
            // Use popup to prompt user for their OAuth provider credentials
            OAuth.popup('github').then(github => {
                // If login is successful,
                // retrieve user data from oauth provider
                console.log(github.me());
            });
        })
        

        ```

        希望这有助于更多人了解并开始使用OAuth。