Swift/Alamofire/API-токен/Отсутствует обязательный параметр:grant_typeIOS

Программируем под IOS
Ответить
Anonymous
 Swift/Alamofire/API-токен/Отсутствует обязательный параметр:grant_type

Сообщение Anonymous »

Я пытаюсь создать TwitterSearcher.
Мои условия:
  • Использование аутентификации только в приложении

    Использование аутентификации только в приложении li>
    стандартный API поиска
  • Использование Alamofire, SwiftyJSON
Как некоторые из вас Знаете, вам нужно получить токен для доступа к Твиттеру, прежде чем искать твиты.
Я довольно новичок в использовании самого API, но я почти не реализовал некоторый код.
Однако при получении токена я столкнулся с ответом об ошибке ниже.

Код: Выделить всё

{
"errors" : [
{
"code" : 170,
"label" : "forbidden_missing_parameter",
"message" : "Missing required parameter: grant_type"
}
]
}

Я уже пробовал несколько способов ссылаться на другие статьи, скажем,
  • изменяя параметр на ["payload" : "grant_type=client_credentials"]
  • убрать «content_type» из заголовка
Хотя я не уловил значения из этих двух ошибка все еще происходит включено.

Код: Выделить всё

import Foundation
import Alamofire
import SwiftyJSON

protocol SearchUserApi {
func getToken()
func getTweets(content: String)
}

class APIOperator: SearchUserApi {

var accessToken: String?
let tokenApi = "https://api.twitter.com/oauth2/token"
let api = "https://api.twitter.com/1.1/search/tweets.json"
let consumerKey = "---"
let consumerSecret = "---"

func getToken() {
let credentials = "\(consumerKey):\(consumerSecret)".data(using: String.Encoding.utf8)!.base64EncodedString(options: NSData.Base64EncodingOptions(rawValue: 0))
let headers = [
"Authorization" : "Basic \(credentials)",
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8"
]
let params: [String : AnyObject] = ["grant_type": "client_credentials" as AnyObject]

Alamofire.request(
tokenApi,
method: .post,
parameters: params,
encoding: JSONEncoding.default,
headers: headers
)
.responseJSON { (response) in
guard let object = response.result.value else {
print("Getting token is failed")
return
}
let json = JSON(object)
print(json)
}

}

func getTweets(content: String) {
print("not yet")
}
}
Надеюсь, вы мне поможете.


Подробнее здесь: https://stackoverflow.com/questions/558 ... grant-type
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «IOS»