Swift
Swift
Twitter - Application Only Authentication
Demonstrates how to get a Twitter OAuth2 token for application-only authentication.This example is deprecated and no longer valid.
Chilkat Swift Downloads
func chilkatTest() {
var success: Bool = false
// It requires the Chilkat API to have been previously unlocked.
// See Global Unlock Sample for sample code.
// Note: Define your Twitter apps at https://apps.twitter.com/
// We're going to send an HTTPS POST that looks like this:
// POST /oauth2/token HTTP/1.1
// Host: api.twitter.com
// User-Agent: My Twitter App v1.0.23
// Authorization: Basic eHZ6MWV2RlM0d0VFUFRHRUZQSEJvZzpMOHFxOVBaeVJn
// NmllS0dFS2hab2xHQzB2SldMdzhpRUo4OERSZHlPZw==
// Content-Type: application/x-www-form-urlencoded;charset=UTF-8
// Content-Length: 29
// Accept-Encoding: gzip
//
// grant_type=client_credentials
// Update these values with your consumer key and secret (also known as API key and API secret).
var consumerKey: String? = "TWITTER_CONSUMER_KEY"
var consumerSecret: String? = "TWITTER_CONSUMER_SECRET"
let http = CkoHttp()!
http.basicAuth = true
http.login = consumerKey
http.password = consumerSecret
let req = CkoHttpRequest()!
req.addParam(name: "grant_type", value: "client_credentials")
req.httpVerb = "POST"
req.contentType = "application/x-www-form-urlencoded"
let resp = CkoHttpResponse()!
success = http.httpReq(url: "https://api.twitter.com/oauth2/token", request: req, response: resp)
if success == false {
print("\(http.lastErrorText!)")
return
}
print("Response Status Code: \(resp.statusCode.intValue)")
if resp.statusCode.intValue != 200 {
print("Expected a 200 response status code for success.")
print("\(resp.bodyStr!)")
return
}
// We should get a JSON response like this:
// {
// "token_type":"bearer",
// "access_token":"..."
// }
let json = CkoJsonObject()!
json.load(json: resp.bodyStr)
print("Access token = \(json.string(of: "access_token")!)")
}