Twitter OAuth request_token : 오류 코드 32, 인증 할 수 없음

레드 나이트 91

Game Maker 앱에서 Twitter로 OAuth를 통해 Firebase에 사용자를 인증하려고합니다 (Game Maker는 SDK를 지원하지 않음).

REST HTTP POST 요청 ( https://developer.twitter.com/en/docs/basics/authentication/api-reference/request_token에 따라 )을 통해 수행하지만 응답은 "오류 32, 인증 할 수 없습니다."입니다.

Firebase와 Twitter의 개발자 콘솔에 앱을 설정하고 API 키 / 비밀 값을 Firebase 콘솔에 복사했습니다. Firebase는 Twitter 앱에서 화이트리스트에 등록한 callback_url을 제공합니다.

저는 3-legged OAuth에 대한 Twitter API 문서 (1 단계, POST request_token)를 따르고 있으며 끝없는 다른 리소스를 확인했습니다.

서명에서 온라인 인코더를 통해 HMAC-SHA1 인코딩이 올바른지 다시 한 번 확인했습니다.

이것은 내 HTTP 요청입니다.

URL : https://api.twitter.com/oauth/request_token 방법 : POST 헤더 :

Host : api.twitter.com,
Content-Type : application/x-www-form-urlencoded,
Authorization :

Oauth oauth_callback="https%3A%2F%2Fbitblock-blast.firebaseapp.com%2F__%2Fauth%2Fhandler", oauth_consumer_key="kEH9VascQh5rGdq6khl0oCfnL", oauth_nonce="p0B7y4w0P334qa633JzF370z89LK0N60", oauth_signature="MTIwMjc1Nzc1MTczODQ1OTUxMzQyMzgxMzIxNzYxODQxMjQyMzkyNTEyMDI3MTI0MjM1", oauth_signature_method="HMAC-SHA1", oauth_timestamp="1571857067", oauth_version="1.0"

몸: ""

헤더의 서명은 다음 사전에서 생성되었습니다.

oauth_callback      : https://bitblock-blast.firebaseapp.com/__/auth/handler,
oauth_consumer_key  : [TWITTER API KEY],
oauth_nonce     : [NONCE],
oauth_signature_method  : "HMAC-SHA1",
oauth_timestamp"    : [TIMESTAMP],
oauth_version"      : "1.0"

(모든 값은 각 스크립트에 의해 채워집니다)

이것이 최종 서명 문자열을 만드는 방법입니다.

var parameters = map_to_http_parameter_string(header); //Convert to "key=value, key=value" format
var signature_base = string_upper(method) + "&" + percent_encode(url) + "&" + percent_encode(parameters);
var signing_key = [TWITTER_API_SECRET] + "&";

var signature = base64_encode(string_hex_to_binary(hash_hmac(signature_base, signing_key)));

다음은 서명 생성에 대한 단계별 분석입니다.

  1. 연결된 'parameters'문자열 : "oauth_callback = https % 3A % 2F % 2Fbitblock-blast.firebaseapp.com % 2F __ % 2Fauth % 2Fhandler & oauth_consumer_key = [API_KEY] & oauth_nonce = 5sR6w60Hz2Uvk10Esigamp = 1571857 & osauth_the 주문 및 퍼센트 인코딩)

  2. 연결된 '기본 서명'문자열 : "POST & https % 3A % 2F % 2Fapi.twitter.com % 2Foauth % 2Frequest_token & oauth_callback % 3Dhttps % 253A % 252F % 252Fbitblock-blast.firebaseapp.com % 252F __ % 252Fauth % 252Fhandler % 26oauth_consumer_key % 3D [API_key] % 26oauth_nonce % 3D5sR6w60Hz2Uvk10EdW5135O79NuV3y7b % 26oauth_signature_method % 3DHMAC-SHA1 % 26oauth_timestamp % 3D1571857990 % 26oauth_version % 3D1.0 "

  3. 서명 키 "[TWITTER_API_SECRET] &"(액세스 암호가 비어 있음)

  4. (기본 서명, 서명 키)에서 HMAC-SHA1을 실행하고 base64로 인코딩합니다 (Game Maker의 HMAC-SHA1이 16 진수 ASCII 문자열을 생성하므로 16 진수에서 바이너리 부분이 필요함)

마지막으로 헤더의 인증 값에 해당 서명을 추가하고 HTTP 요청을 보냅니다.

응답은 OAuth 토큰이어야합니다. 대신 오류 32가 계속 표시되어 인증 할 수 없습니다.

나는 내가 뭘 잘못하고 있는지 모든 것을 확인했지만 찾을 수 없습니다.

레드 나이트 91

오타가 멍청한 오타라는 것을 알았습니다. Authorization 헤더에 "OAuth oauth_callback ..."대신 "Oauth oauth_callback ..."을 썼습니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

check_twitter_oauth () 오류 : OAuth 인증 오류-oauth를 전달할 수 없습니다.

분류에서Dev

R-Twitter-OAuth-REST API-사용자를 인증 할 수 없음

분류에서Dev

BitBucket OAuth request_token API가 항상 400 "OAuth 요청을 확인할 수 없습니다."를 반환하는 이유는 무엇입니까?

분류에서Dev

PHP Abraham의 TwitterOAuth, 오류 32 인증 할 수 없습니다.

분류에서Dev

오류 도메인 = AVFoundationErrorDomain 코드 = -11814 "기록 할 수 없음"

분류에서Dev

OAuth 2, "access_token"및 "인증 코드"에 더 나은 이름을 사용할 수 없습니까?

분류에서Dev

phpMyAdmin : MySQL 서버에 로그인 할 수 없음 오류 코드 없음

분류에서Dev

MRTK V2.2-인증 생성 중 오류로 인해 빌드 할 수 없음

분류에서Dev

p12 인증서에서 키 쌍을로드 할 수 없음-OPENSSL 오류

분류에서Dev

node.js에서 리트 윗 Twitter API를 사용할 수 없음-오류 코드 34

분류에서Dev

"신뢰할 수있는 인증서를 찾을 수 없음"오류와 함께 Twitter 상태 업데이트를 게시 할 수 없습니다.

분류에서Dev

check_twitter_oauth () 오류 : OAuth 인증 오류 :

분류에서Dev

오류 : ': app @ debug / compileClasspath'에 대한 종속성을 해결할 수 없음 : twitter.aar를 다운로드 할 수 없습니다 (com.twitter.sdk.android:twitter:3.1.0)

분류에서Dev

독이 오류 메시지를 인코딩 할 수 없음

분류에서Dev

401 oauth 서명 및 토큰 (https://api.twitter.com/oauth/request_token)의 유효성을 검사하지 못했습니다 (Java 코드).

분류에서Dev

XFCE 로그인 오류 : Failsafe 세션을로드 할 수 없음

분류에서Dev

Spark 코드의 "작업을 직렬화 할 수 없음"오류

분류에서Dev

짧은 코드 Swift 오류 : PFUserResultBlock으로 변환 할 수 없음

분류에서Dev

Windows Phone 7-C # 코드에서 인증서를로드 할 수 없음

분류에서Dev

TokenAuthentication : 인증 할 수 없음

분류에서Dev

Python 'JSON 개체를 디코딩 할 수 없음'가능한 인코딩 오류

분류에서Dev

Facebook 인증을 추가 할 때 페이지를 찾을 수 없음 오류

분류에서Dev

Android HTTPS 오류 신뢰할 수있는 서버 인증서 없음

분류에서Dev

PreSignedUrl을 인증 할 수 없습니다. (서비스 : AmazonRDS, 상태 코드 : 400, 오류 코드-RDS 스냅 샷을 다른 지역에 복사하는 동안

분류에서Dev

Twitter API 1.1 "잘못된 인증 오류"가있는 OAuth2

분류에서Dev

Django 오류 코드는 어떤 문제인지 파악할 수 없습니다.

분류에서Dev

Docker 빌드 문제 : 컨텍스트 확인 오류 : 통계 할 수 없음

분류에서Dev

오류 메인 클래스를 찾거나로드 할 수 없음 (Java)

분류에서Dev

Esri API 10.2-오류 코드 : 400 "작업을 완료 할 수 없음"

Related 관련 기사

  1. 1

    check_twitter_oauth () 오류 : OAuth 인증 오류-oauth를 전달할 수 없습니다.

  2. 2

    R-Twitter-OAuth-REST API-사용자를 인증 할 수 없음

  3. 3

    BitBucket OAuth request_token API가 항상 400 "OAuth 요청을 확인할 수 없습니다."를 반환하는 이유는 무엇입니까?

  4. 4

    PHP Abraham의 TwitterOAuth, 오류 32 인증 할 수 없습니다.

  5. 5

    오류 도메인 = AVFoundationErrorDomain 코드 = -11814 "기록 할 수 없음"

  6. 6

    OAuth 2, "access_token"및 "인증 코드"에 더 나은 이름을 사용할 수 없습니까?

  7. 7

    phpMyAdmin : MySQL 서버에 로그인 할 수 없음 오류 코드 없음

  8. 8

    MRTK V2.2-인증 생성 중 오류로 인해 빌드 할 수 없음

  9. 9

    p12 인증서에서 키 쌍을로드 할 수 없음-OPENSSL 오류

  10. 10

    node.js에서 리트 윗 Twitter API를 사용할 수 없음-오류 코드 34

  11. 11

    "신뢰할 수있는 인증서를 찾을 수 없음"오류와 함께 Twitter 상태 업데이트를 게시 할 수 없습니다.

  12. 12

    check_twitter_oauth () 오류 : OAuth 인증 오류 :

  13. 13

    오류 : ': app @ debug / compileClasspath'에 대한 종속성을 해결할 수 없음 : twitter.aar를 다운로드 할 수 없습니다 (com.twitter.sdk.android:twitter:3.1.0)

  14. 14

    독이 오류 메시지를 인코딩 할 수 없음

  15. 15

    401 oauth 서명 및 토큰 (https://api.twitter.com/oauth/request_token)의 유효성을 검사하지 못했습니다 (Java 코드).

  16. 16

    XFCE 로그인 오류 : Failsafe 세션을로드 할 수 없음

  17. 17

    Spark 코드의 "작업을 직렬화 할 수 없음"오류

  18. 18

    짧은 코드 Swift 오류 : PFUserResultBlock으로 변환 할 수 없음

  19. 19

    Windows Phone 7-C # 코드에서 인증서를로드 할 수 없음

  20. 20

    TokenAuthentication : 인증 할 수 없음

  21. 21

    Python 'JSON 개체를 디코딩 할 수 없음'가능한 인코딩 오류

  22. 22

    Facebook 인증을 추가 할 때 페이지를 찾을 수 없음 오류

  23. 23

    Android HTTPS 오류 신뢰할 수있는 서버 인증서 없음

  24. 24

    PreSignedUrl을 인증 할 수 없습니다. (서비스 : AmazonRDS, 상태 코드 : 400, 오류 코드-RDS 스냅 샷을 다른 지역에 복사하는 동안

  25. 25

    Twitter API 1.1 "잘못된 인증 오류"가있는 OAuth2

  26. 26

    Django 오류 코드는 어떤 문제인지 파악할 수 없습니다.

  27. 27

    Docker 빌드 문제 : 컨텍스트 확인 오류 : 통계 할 수 없음

  28. 28

    오류 메인 클래스를 찾거나로드 할 수 없음 (Java)

  29. 29

    Esri API 10.2-오류 코드 : 400 "작업을 완료 할 수 없음"

뜨겁다태그

보관