내가 인증받지 못했다는 오류 메시지가 나타납니다. 그렇지 않으면 나는 트위터 API 1.1에서 일반 짹짹 (단지 텍스트)를 게시하거나 모든 GET 함수를 사용할 수 없었다. 내가 무슨 짓을했는지Twitter API 1.1 상태/update_with_media 동안 오류 코드 32
:
나는 (API에 쉽게 액세스를 제공하는 트위터 API의 추상화) 이 Zend_Service_Twitter를 확장 내 자신의 클래스를 작성했습니다. API의 더 많은 끝점을 구현하기 위해 확장했습니다. 예 : "상태/update_with_media". 이 함수의 기능은 다른 함수와 비슷합니다 (처음에는 init(), 매개 변수 설정 및 끝 호출 후 함수에서). 내가 API를 에 설명되어있는대로 'multipart/form-data'Zend_Http_Client있는 EncType 설정했습니다. GET 요청이 잘 작동하고 GET 계정/verify_credentials도 작동합니다.
ErrorMessage가
이 :하지만 POST이 오류 occures 당신을 인증 할 수 없습니다를ErrorCode가 : 32
이
젠드 1.12.5
PHP 5.3.14
사용
예 요청 :
POST /1.1/statuses/update_with_media.json HTTP/1.1
Host: api.twitter.com
Connection: close
Accept-encoding: gzip, deflate
User-Agent: Zend_Http_Client
Cookie:twid=u%3D1725343788%7CY611pVKbM7CH6i%2Br1Ni%2BkeuSXfU%3D;_twitter_sess=BAh7CDoPY3JlYXRlZF9hdGwrCGmjH4tGAToMY3NyZl9pZCIlMGFlNzY5ZDVh%250AMGQ3OThjNGU5YzE1ZjA3YTZmN2I4ZjM6B2lkIiU4ZWJkNTRhOTNhNjhiMGIz%250ANzZjMzYxMTEyZWU3Y2E2Yg%253D%253D--a632ea1411849916ca5399f9654a241b0a70a17f;guest_id=v1%3A140249344476018229;lang=de;
Accept-Charset: ISO-8859-1,utf-8
Authorization: OAuth realm="",oauth_consumer_key="bBmTZTbVaziLelczV7VwqBa1U",oauth_nonce="df79065c315b5ed8d690c92a8016cece",oauth_signature_method="HMAC-SHA1",oauth_timestamp="1402493472",oauth_version="1.0",oauth_token="1725343788-CxwJ3G6HRl0POkrqz6dl6HZImgFdeSzNucyqNkI",oauth_signature="z%2BuRj%2FEyWbo4ym12uYoQdOob%2Bmc%3D"
Content-Type: multipart/form-data; boundary=---ZENDHTTPCLIENT-6c7c5ce101c5dcf5f666f17e1a10486b
Content-Length: 71108
-----ZENDHTTPCLIENT-6c7c5ce101c5dcf5f666f17e1a10486b
Content-Disposition: form-data; name="status"
sorjghkl sdaghl
-----ZENDHTTPCLIENT-6c7c5ce101c5dcf5f666f17e1a10486b
Content-Disposition: form-data; name="media[]"
..... here is the binary picture (access with the function file_get_contents(realpath($src)))...
다음의 일반적인 함정을 확인한다. https://dev.twitter.com/docs/uploading-media –
Ty하지만 문제는 없습니다. 내 사진의 최대 파일 크기는 70.826 바이트이므로 아무런 문제가 없습니다. 상태 업데이트 당 최대 미디어 수는 1입니다. 사용자는 미공개 일일 상태 업데이트 제한과는 별도로 별도의 일일 미디어 업로드 제한이 있습니다. 오늘 또는 어제 모든 사진을 tweeted ... 그림은 .jpg이며 원시 이진 데이터의 file_getcontents 함수를 사용합니다. – jhilgefo