Клуб API Диска

Перестал работать API для загрузки

14 февраля, 20:39

С сегодняшнего дня не могу загрузить файлы в Диск с помощью CURL. Выдает ошибку с кодом 500. Код никак не менял. В чем проблема?

5 комментариев
Напишите пожалуйста пример запроса и ответ, в ответ на который получаете 500 с включёным флагом -v в curl'е.
akinfold,
Собственно 3 дня назад все работало.


* About to connect() to uploader12h.disk.yandex.net port 443 (#0)
* Trying 2a02:6b8:0:f19::a3... * connected
* Connected to uploader12h.disk.yandex.net (2a02:6b8:0:f19::a3) port 443 (#0)
* CAfile: /etc/pki/tls/certs/ca-bundle.crt
CApath: none
* SSL connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate:
* subject: CN=*.disk.yandex.net,ST=Russian Federation,L=Moscow,OU=ITO,O=Yandex LLC,C=RU
* start date: Nov 19 11:42:07 2015 GMT
* expire date: Nov 18 11:42:07 2017 GMT
* common name: *.disk.yandex.net
* issuer: CN=Yandex CA,OU=Yandex Certification Authority,O=Yandex LLC,C=RU
> PUT /upload-target/20170214T225830.220.utd.adk0gqwj816tgaovux2mr0i2i-k12h.980270 HTTP/1.1
User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36
Host: uploader12h.disk.yandex.net
Accept: */*
Authorization: OAuth <TOKEN>
Content-Length: 1062288
Content-Type: application/x-www-form-urlencoded
Expect: 100-continue
< HTTP/1.1 100 Continue
< HTTP/1.1 500 Server Error
< Server: nginx/1.8.1
< Date: Tue, 14 Feb 2017 19:58:30 GMT
< Transfer-Encoding: chunked
< Connection: keep-alive
< Keep-Alive: timeout=120
<
* Connection #0 to host uploader12h.disk.yandex.net left intact
* Closing connection #0


curl_setopt($this->ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
curl_setopt($this->ch, CURLOPT_HEADER, 0);
curl_setopt($this->ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYPEER, true);
curl_setopt($this->ch, CURLOPT_SSL_VERIFYSTATUS, true);
 curl_setopt($this->ch, CURLOPT_URL, полученный URL для загрузки);
curl_setopt($this->ch, CURLOPT_CUSTOMREQUEST, 'PUT');
curl_setopt($this->ch, CURLOPT_POSTFIELDS, file_get_contents($сам файл));
Обновлено 14 февраля, 23:01
cyberdog_off,
нашли проблему и сегодня починили. Проверьте, сейчас должно работать нормально.
akinfold,
все заработало
cyberdog_off,
спасибо за репорт :)