1

我正在尝试解析从foursquare api(回调URL)返回的URL,问题是请求以这种格式出现

0.0.0.0:4567/foursquare#access_token=KCZGA4JIR4N3QXXAASZTZRYWHU2TYJITM53LARSKHRVFPHQ

如您所见,主题标签在我的代码中造成了严重破坏,因为找不到使用request.url或整个请求对象的地方。

有没有人解决这个问题?我不是在尝试进行身份验证,我已经从 iOS 应用程序内部进行了验证。

require 'sinatra'
require 'json'
require 'dm-core'
require 'dm-validations'
require 'dm-timestamps'
require 'dm-migrations'
require 'dm-ar-finders'

# where foursquare sent us after authorization
get "/foursquare" do
    puts "Receiving ..." + request.url
end
4

1 回答 1

1

可能不是您想听到的,但快速解决方法是让您的 Sinatra(假设给定您的端口号)而不是 iOS 应用程序进行身份验证。这样您就可以利用omniauth-foursquare gem,https://github.com/arunagw/omniauth-foursquare/blob/master/lib/omniauth/strategies/foursquare.rb,它将为您完成大部分解析.

根据 Foursquare 的 API 页面https://developer.foursquare.com/resources/client,他们也建议进行基于 Web 的身份验证。

于 2012-09-22T23:28:52.267 回答