나는 트위터와 대화 할 수있는 스크립트를 작성 중입니다. 올바른 서명을 생성하는 것부터 액세스 오류가 발생하는 것 외에는 문제가 없습니다. 그러나 트위터 설명서의 변수와 일치하도록 변수를 변경하면 다른 결과가 나타납니다. https://dev.twitter.com/docs/auth/creating-signature의 하단에, 그것은 말한다 :생성 된 OAuth 서명이 Twitter와 다른 이유는 무엇입니까?
For example, the output given the base string and signing key
given on this page is
B6 79 C0 AF 18 F4 E9 C5 87 AB 8E 20 0A CD 4E 48 A9 3F 8C B6
내 코드는 거의 같은 것을 생산 - 단지 공간과 소문자 아니오.
echo base64_encode('B679C0AF18F4E9C587AB8E200ACD4E48A93F8CB6');
echo strtolower(base64_encode('B679C0AF18F4E9C587AB8E200ACD4E48A93F8CB6'));
echo base64_encode('B6 79 C0 AF 18 F4 E9 C5 87 AB 8E 20 0A CD 4E 48 A9 3F 8C B6');
echo base64_encode(strtolower('B6 79 C0 AF 18 F4 E9 C5 87 AB 8E 20 0A CD 4E 48 A9 3F 8C B6'));
결과 :
QjY3OUMwQUYxOEY0RTlDNTg3QUI4RTIwMEFDRDRFNDhBOTNGOENCNg==
qjy3oumwquyxoey0rtldntg3qui4rtiwmefdrdrfndhbotngoencng==
QjYgNzkgQzAgQUYgMTggRjQgRTkgQzUgODcgQUIgOEUgMjAgMEEgQ0QgNEUgNDggQTkgM0YgOEMgQjY=
YjYgNzkgYzAgYWYgMTggZjQgZTkgYzUgODcgYWIgOGUgMjAgMGEgY2QgNGUgNDggYTkgM2YgOGMgYjY=
나는()를 base64_encode 때, 난 다른 케이스/간격/등과 노력, 문서 (tnnArxj06cWHq44gCs1OSKk/jLY=
)에서와 동일한 값을 얻을하지 않습니다 내가 여기서 뭔가 분명한 것을 놓치고 있니?
Base64로는 대소 문자를 구분 될 수 있습니다. –
"[..] 다른 케이스/공백/등 [...]" – LeonardChallis