私は(https://untappd.com/api/docs#authentication)Untappd APIで動作するのOAuth2得るためにしばらくの間しようとしてきたし、いくつかの異なるのOAuth2フレームワークと行き止まりに実行されています。スウィフトのOAuth2 p2の
私はP2 OAuthを試しています。私は認証プロセスを開始することができるようだが、ユーザーがサインインすると、コードが戻ってきて、そのコードをトークンのuntappdに送り返して問題に陥る。私は、P2のOAuthから例のオフに行くされてきた:私は、コードを取り戻すように見えるが、最終的な交換が失敗したログで
class ViewController: UIViewController {
fileprivate var alamofireManager: SessionManager?
var loader: OAuth2DataLoader?
var oauth2 = OAuth2CodeGrantNoTokenType(settings: [
"client_id": "A0******************",
"client_secret": "BA******************",
"authorize_uri": "https://untappd.com/oauth/authenticate",
"token_uri": "https://untappd.com/oauth/authorize",
"redirect_uris": ["****://oauthcallback"],
"response_type": "code",
"secret_in_body": false,
"keychain": true,
] as OAuth2JSON)
@IBOutlet var imageView: UIImageView?
@IBOutlet var signInEmbeddedButton: UIButton?
@IBOutlet var signInSafariButton: UIButton?
@IBOutlet var signInAutoButton: UIButton?
@IBOutlet var forgetButton: UIButton?
@IBAction func signInEmbedded(_ sender: UIButton?) {
if oauth2.isAuthorizing {
oauth2.abortAuthorization()
return
}
sender?.setTitle("Authorizing...", for: UIControlState.normal)
oauth2.authConfig.authorizeEmbedded = true
oauth2.authConfig.authorizeContext = self
oauth2.verbose = true
oauth2.authorize() { authParameters, error in
if let params = authParameters {
print("Authorized! Access token is in `oauth2.accessToken`")
print("Authorized! Additional parameters: \(params)")
}
else {
print("Authorization was cancelled or went wrong: \(error)") // error will not be nil
}
}
}
:
[デバッグ]のOAuth2:交換コード2010D2を
をリダイレクトhttps://untappd.com/oauth/authorize でアクセストークンのため*********** [デバッグ]のOAuth2:[偽] [偽]アクセスと引き換えコードを行なったし、リフレッシュ認定 トークン!アクセストークンは
oauth2.accessToken
です。追加のパラメータ:["meta":{ "error_detail" = "client_id、redirect_url、client_secret、またはcodeパラメータのいずれかが見つかりません。 "error_type" = "param_error"; "http_code" = 500; }、 "応答":< __NSArray0 0x174005900>( ) ]
私は間違った場所で探していない限り、のOAuth2とスウィフト3のために多くの助けがあるように思えません。何か案は?