Method: Baidu::OAuth::RESTClient#has_app_permissions

Defined in:
lib/baidu/oauth/rest_client.rb

#has_app_permissions(ext_perm, uid = nil) ⇒ Hash #has_app_permissions(ext_perms, uid = nil) ⇒ Hash

判断指定用户是否具有某一批数据操作权限

根据用户id以及在百度的相应的操作权限(可以是多个权限半角逗号隔开)来判断用户是否可以进行此操作

Examples:

返回的原始 JSON

{"basic":"1","email":"0"}

Overloads:

  • #has_app_permissions(ext_perm, uid = nil) ⇒ Hash

    Parameters:

    • ext_perm (String)

      多个权限半角逗号隔开,例如basic,email等,具体权限请查看权限列表

    • uid (String) (defaults to: nil)

      用户uid,为空则默认是当前用户

  • #has_app_permissions(ext_perms, uid = nil) ⇒ Hash

    Parameters:

    • ext_perms (Array<String>)

      权限字符串数组,具体权限请查看权限列表

    • uid (String) (defaults to: nil)

      用户uid,为空则默认是当前用户

Returns:

  • (Hash)

    各个值在原始 JSON 基础之上转换为 true 或者 false

See Also:



153
154
155
156
157
158
159
160
161
# File 'lib/baidu/oauth/rest_client.rb', line 153

def has_app_permissions(ext_perms, uid=nil)
  body = { ext_perms: ext_perms, uid: uid }
  if ext_perms.is_a? Array
    body[:ext_perms] = ext_perms.join ','
  end

  rest = api_request '/passport/users/hasAppPermissions', body
  rest.each { |k, v| rest[k] = v == '1' }
end