native-network/social_json_api

此模块为您开源社交网站启用JSON API。

安装: 4

依赖: 1

建议者: 0

安全: 0

星标: 0

关注者: 2

分支: 0

类型:drupal-module

2.0.0 2019-06-14 07:44 UTC

This package is auto-updated.

Last update: 2024-09-14 22:38:05 UTC


README

社交JSON API提供以下实体可用的API

  • 评论
  • 活动报名
  • 文件
  • 小组
  • 小组内容
  • 节点
  • 帖子
  • 个人资料
  • 分类术语
  • 用户

这些实体可以直接使用。但是,您需要配置以访问API(身份验证和授权)。

安装

  1. 启用此模块及其所有依赖项。
  2. 模块将在您的docroot(web/html)目录外自动创建一个文件夹,其中可以存储公钥和私钥组合。默认情况下为:private://oauth_api_keys/
  3. 如果您的网站具有sitemanager角色,则将自动为此角色分配一些权限。
  4. 检查social_json_api_entity_type_alter()中是否启用了所有正确的实体。

配置

实现的API系统具有多个可用的认证授权。默认情况下,Open Social允许所有这些授权。

要确定适用于您的用例的授权,请阅读oauth2文档。出于演示目的,我们假设您将想要密码授权,这意味着您将使用特定用户的账户详情进行登录。

  1. 转到/admin/config/people/simple_oauth并配置OAuth设置以满足您的需求。请务必检查过期时间以及是否存在密钥。在开发过程中,您可以设置访问令牌过期时间为更高的值。通常这应该低于300秒。
  2. 在/admin/config/services/consumer/add上创建一个消费者
  3. 至少填写以下内容
    • 标签:您的消费者的标签(例如,我的CRM系统)
    • 用户:留空
    • 新密钥:在此处生成安全字符串(例如,使用Lastpass,但请记住此信息,您以后需要使用它)
    • 是否是机密:是
    • 此消费者是否为第三方:是
    • 重定向URL:留空
    • 作用域:选择您要使用的作用域,例如Sitemanager(这确定了API的权限)
  4. 保存消费者后,您将转到消费者概览,在那里您可以查看消费者uuid。

身份验证

现在,您可以通过对/oauth/token进行POST请求来访问API

grant_type:password
client_id:uuid
client_secret:secret
username:test
password:test

只需填写相应的client_id、client_secret、用户名和密码。您将收到access_token和refresh_token,您可以在后续请求中使用它们,例如在refresh_token请求中,或者您可以在过期时间内使用相同的access_token。

更多信息请参阅:http://oauth2.thephpleague.com/authorization-server/resource-owner-password-credentials-grant/

文档

有关更多信息,请参阅您网站上的:/admin/config/opensocial/social-json-api

您还可以在那里找到API文档的链接。该文档是自动生成的,并通过ReDoc显示。