我正在編寫一個腳本來與twitter進行交流 - 除了生成正確的簽名以外,一切看起來都很好,我在那裏遇到訪問錯誤。但是,改變我的變量以匹配twitter文檔中的變量會產生不同的結果。在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
我的代碼產生幾乎同樣的事情 - 只是沒有空格和小寫。然而,當我BASE64_ENCODE(),我沒有得到相同的值文檔(tnnArxj06cWHq44gCs1OSKk/jLY=
)中,即使有不同的情況下/間距的/ etc努力:
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編碼可能是不區分大小寫。 –
「[..]甚至嘗試不同的大小寫/間距/等[..]」 – LeonardChallis