3.0 - HTTP API

作者: 空乱木 | 来源:发表于2019-08-23 00:25 被阅读3次

    原文链接:https://docs.simpleid.xyz/http-api

    SimpleID以REST API的形式提供了一个开箱即用的跨平台解决方案。

    POST Create Account

    https://api.simpleid.xyz/keychain

    这个端点将启动用户帐户创建过程。响应将用于调用登录端点来将用户登录到您的应用程序中。

    • Request

    Headers
    Authentication: REQUIRED | string | SimpleID的API Key

    数据参数形式
    devId : REQUIRED | string | 在SimpleID开发人员帐户页面中显示的devId。

    storageProviders: OPTIONAL | string | 您希望允许用户使用的存储提供程序的字符串化数组。这应该匹配SimpleID dev帐户中选择的模块。

    authProviders : REQUIRED | string | 您希望允许用户使用的身份验证提供者的字符串化数组。这应该与您在SimpleID dev帐户中选择的模块相匹配。

    username : REQUIRED | string | 用户选择的用户名
    email : REQUIRED | string | 用户的电子邮件地址
    password : REQUIRED | string | 用户选择的密码(密码的验证和强度必须由开发人员处理)

    • Response
      200: OK
      如果帐户创建成功,将返回一个身份地址。它看起来是这样的:

    'ID-1E4xLTnU2GL3Fzfm3zTqSjBfKjpQMjkJC1’

    POST Login

    https://api.simpleid.xyz/appkeys
    在帐户端点返回响应后,在用户登录或创建用户帐户时调用此端点。

    • Request

    Headers
    Authentication: REQUIRED | string | SimpleID的API Key

    数据参数形式
    devId : REQUIRED | string | 在SimpleID开发人员帐户页面中显示的devId。

    profile: REQUIRED | string | 这应该是与schema.org兼容的用户概要文件对象。对于像Blockstack这样的DID auth方法,这是一个必要的参数。这个对象需要被字符串化。

    authProviders : REQUIRED | string | 您希望允许用户使用的身份验证提供者的字符串化数组。这应该与您在SimpleID dev帐户中选择的模块相匹配。

    url : REQUIRED | string | 应用程序的原始url
    username : REQUIRED | string | 用户选择的用户名
    password : REQUIRED | string | 用户选择的密码(密码的验证和强度必须由开发人员处理)

    • Response
      200: OK
      如果请求成功,您将收到一个带有用户密钥对的经过识别的对象,以及(如果使用Blockstack存储)特定于应用程序的存储路径url。您可以使用存储路径url来更新用户的概要文件客户端。
    '{"public":"${pubKey}","private":"${privateKey}","appUrl":"${blockstackAppURL”}’
    

    如果您允许您的用户使用Blockstack作为存储提供程序,您应该确保配置文件匹配以下格式:

    "profile": {
      "claim": {
              "@type": "Person",
              "@context": "http://schema.org",
              "image": [
                {
                  "@type": "ImageObject",
                  "name": "avatar",
                  "contentUrl": "https://gaia.blockstack.org/hub/12GBx1ZwUV2vs9syixvQttamG7GeEx5pPZ//avatar-0"
                }
              ],
              "name": "Graphite",
              "description": "Decentralized and encrypted alternative to Google G-Suite.",
              "apps": {
                "https://app.graphitedocs.com": "https://gaia.blockstack.org/hub/1M16iy9tw9x2KAiwJZUGRvkkJC5adqmuZb/",
                "https://blockusign.co": "https://gaia.blockstack.org/hub/13VMhiiZ8DRzu9NeHdMzYzDtEGfGhFk67F/",
                "https://publishing.graphitedocs.com": "https://gaia.blockstack.org/hub/1MCDQXGcEsoSH5i9FH753e5kmvKmLJ5ttv/"
              },
              "api": {
                "gaiaHubConfig": {
                  "url_prefix": "https://gaia.blockstack.org/hub/"
                },
                "gaiaHubUrl": "https://hub.blockstack.org"
              }
            }
        }
    }
    

    您也可以为其他身份验证/存储模块提供概要对象,但这是正确使用Blockstack模块所必需的。

    相关文章

      网友评论

        本文标题:3.0 - HTTP API

        本文链接:https://www.haomeiwen.com/subject/btpasctx.html