如何通过SODA API传递私有数据集的用户身份验证?

时间:2015-06-18 15:46:59

标签: soql socrata soda

我需要使用SODA API访问socrata中的私有数据集。假设下面的链接是数据集

  

https://data.cityofchicago.org/resource/xxxx-xxx.json

尝试此操作时出现以下错误。

"error" : true,
"message" : "You must be logged in to access this resource"

我有有效的凭据来访问数据集。但是我如何通过SODA API调用传递它? 我尝试了下面的代码,但它没有用。

  

https://data.cityofchicago.org/resource/xxxx-xxx.json $用户名='?MYNAME'&安培; $密码=' PWD @ 123'

2 个答案:

答案 0 :(得分:0)

您需要使用HTTP BasicOAuth 2.0进行身份验证。我们有details on how to do that on the developer portal

确保您还提供了应用程序令牌,详见这些文档。

答案 1 :(得分:0)

您需要使用查询字符串传递Secret-Token和AppToken。

如何获取秘密令牌

  1. 登录您的门户网站,然后选择"创建新应用程序"
  2. 在"网站"中输入https://data.cityofchicago.org/resource/xxxx-xxx.json字段。
  3. 保存。
  4. 转到"管理"并从"管理"。
  5. 下获取您的AppToken和SecretToken
  6. 现在,根据socrata开发人员文档语法,在URL中传递应用令牌和秘密令牌:

    https://sandbox.socrata.com/oauth/access_token
    ?client_id=YOUR_AUTH_TOKEN
    &client_secret=YOUR_SECRET_TOKEN
    &grant_type=authorization_code
    &redirect_uri=YOUR_REDIRECT_URI
    &code=CODE
    
  7. 我是also looking来回答同一个问题。传递应用程序令牌后,我可以访问公共数据库,但无法访问私有数据库。