【发布时间】:2017-04-03 19:02:38
【问题描述】:
我在带有 sinatra 的 Ruby 上使用 rest API。 我从 IAMPORT 获得了付款信息,,,
def get_authrestapi()
@key = IMP_KEY
@secret = IMP_SECRET
response = RestClient.post 'https://api.iamport.kr/users/getToken', {'imp_key' => @key, 'imp_secret' => @secret}, :accept => :json
json = JSON.parse(response.to_json, symbolize_names: true)
return json['response']['access_token']
end
但是,我收到了错误消息...如下所示
JSON::ParserError at /payments 757: '"{\"code\":0,\"message\":null,\"response\":{\"access_token\":\"9898 出现意外令牌....", "..."}}"'
我该如何解决这个问题?我认为,变量 'json' 不是 HASH 存在问题..
谢谢。
【问题讨论】:
-
我也使用这些代码。 # json = JSON.parse(response,:symbolize_names => true) 但是,在这种情况下,未定义方法 '['
-
这个here有更好的解决方案。
标签: json ruby parsing hash sinatra