【问题标题】:Twitter API in SWIFT via Alamofire通过 Alamofire 在 SWIFT 中使用 Twitter API
【发布时间】:2016-11-27 10:13:18
【问题描述】:

我目前尝试发送一个简单的查询 - 在 Postman 中它对我来说很好,但在 SWIFT 中我根本无法让它工作 我的代码如下所示:

func TWITTER_getPosts(username:String){


        let headers = [
            "screen_name": "username",
            "authorization": "OAuth oauth_consumer_key=\"<KEY>\",oauth_token=\"<KEY>\",oauth_signature_method=\"HMAC-SHA1\",oauth_timestamp=\"1469246792\",oauth_nonce=\"n6Sxbq\",oauth_version=\"1.0\",oauth_signature=\"<KEY>\"",
            "include_rts": "false"
        ]

        Alamofire.request(.GET, "https://api.twitter.com/1.1/statuses/user_timeline.json", parameters: headers)
            .responseJSON { response in
                print(response.request)  // original URL request
                print(response.response) // URL response
                print(response.data)     // server data
                print(response.result)   // result of response serialization

                if let JSON = response.result.value {
                    print("JSON: \(JSON)")
                }
        }
    }

我总是以a结尾

错误 = ( { 代码 = 215; message = "错误的身份验证数据。";

【问题讨论】:

  • 你试过使用 STTwitter cocoapods.org/pods/STTwitter 吗?我没有在 Swift 中使用它的经验,但如果它是可桥接的,它可能会很有帮助
  • 我们如何生成签名?

标签: ios swift api twitter


【解决方案1】:

请求方法的参数之一不正确。 如果要传递标头,则不应将它们传递给参数,它们应按以下方式传递:

let headers = [
 "Authorization": "Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ==",
 "Accept": "application/json"
]

Alamofire.request(.GET, "https://httpbin.org/get", headers: headers)
     .responseJSON { response in
         debugPrint(response)
     }

headers: headers 应该是要走的路。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-02-12
    • 1970-01-01
    • 1970-01-01
    • 2021-04-05
    • 2018-12-08
    • 1970-01-01
    • 2023-04-02
    相关资源
    最近更新 更多