私はリンクされたApiで、oAuth 2.0を迅速に使用しています。主な問題は、access_token
を取得した後にUIWebView
にクッキーを書き込んでいないことです。 私はない/feed
ページaccess_token
が、ディスプレイのログインページを取得した後、この `oAuthを使用したLinkedinのログイン1.0a
oginWebView.loadRequest(URLRequest(url: URL(string : "https://www.instagram.com/")!))
を試してみました。私は私のアプリのためのクッキーが必要です。私は多くの投稿をチェックしましたが、oAuth 1.0aの認証には適切な解決策がありませんでした。 私はInstagram oauth
を使用しています。私はoAuth 1.0
のためだと思う。私はoAuthについて多くの知識を持っていませんでした。
oAuth 1.0aを使用して、webviewでリンクン認証の簡単なログインの例(swift、objective-c)を教えてください。または、クッキーを保存するための他のソリューション。または、私はlinkedinのコードの下でどのように使用できますか?おかげさまで
oAuth 1.0 Sample
struct INSTAGRAM_IDS {
static let INSTAGRAM_AUTHURL = "https://api.instagram.com/oauth/authorize/"
static let INSTAGRAM_APIURl = "https://api.instagram.com/v1/users/"
static let INSTAGRAM_CLIENT_ID = ""
static let INSTAGRAM_CLIENTSERCRET = ""
static let INSTAGRAM_REDIRECT_URI = ""
static let INSTAGRAM_ACCESS_TOKEN = "access_token"
static let INSTAGRAM_SCOPE = "likes+comments+relationships+public_content+follower_list"
}
func unSignedRequest() {
let authURL = String(format: "%@?client_id=%@&redirect_uri=%@&response_type=token&scope=%@&DEBUG=True", arguments: [INSTAGRAM_IDS.INSTAGRAM_AUTHURL,INSTAGRAM_IDS.INSTAGRAM_CLIENT_ID,INSTAGRAM_IDS.INSTAGRAM_REDIRECT_URI, INSTAGRAM_IDS.INSTAGRAM_SCOPE ])
let urlRequest = URLRequest.init(url: URL.init(string: authURL)!)
loginWebView.loadRequest(urlRequest)
}
func checkRequestForCallbackURL(request: URLRequest) -> Bool {
let requestURLString = (request.url?.absoluteString)! as String
if requestURLString.hasPrefix(INSTAGRAM_IDS.INSTAGRAM_REDIRECT_URI) {
print(requestURLString, "RedirectURL")
let range: Range<String.Index> = requestURLString.range(of: "#access_token=")!
handleAuth(authToken: requestURLString.substring(from: range.upperBound))
self.dismiss(animated: true, completion: nil)
return false;
}
return true
}
func handleAuth(authToken: String) {
print("Instagram authentication token ==", authToken)
downloadImage(url: URL(string: "https://api.instagram.com/v1/users/self?access_token=\(authToken)")!)
}
func webView(_ webView: UIWebView, shouldStartLoadWith request: URLRequest, navigationType: UIWebViewNavigationType) -> Bool {
return checkRequestForCallbackURL(request: request)
}