- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 43
Сейчас мучаюсь с API и никак не получается продвинуться.
Сначала использую метод api/method/users.get_sig (он успешно отрабатывает)
Потом api/method/auth.login (тоже успешно отрабатывает). Логирвоание происходит
Но потом, когда использую api/method/content.add_item.goods
Получаю
[error_code] => 71
[error_msg] => Требуется авторизация пользователя
Где еще я должен авторизоваться?
P.S. Речь идет о PHP скрипте. Из адресной строки браузера метод api/method/content.add_item.goods работает отлично.
Где еще я должен авторизоваться?
тут скорее всего не где а как, ваш скрипт не работает с кукисами, если скрипт работает на curl добавьте поддержку кукисов в нем и сохраните их на диск после чего все будет работать.
примерно вот так можно
Создаем файл кукисов в папке /tmp
У меня вот так заработало
Чтобы прочитать
curl_setopt($curl, CURLOPT_COOKIEFILE, $_SERVER['DOCUMENT_ROOT']. '/cookie.txt');
Чтобы записать
curl_setopt($curl, CURLOPT_COOKIEJAR, $_SERVER['DOCUMENT_ROOT']. '/cookie.txt');
Нужно только озаботиться тем, чтобы скрипт смог создать нужный файл. То есть озаботьтесь правами. В данном случае в корне сайта будет создан файл cookie.txt
Получаю
[error_code] => 71
[error_msg] => Требуется авторизация пользователя
тут скорее всего не где а как, ваш скрипт не работает с кукисами, если скрипт работает на curl добавьте поддержку кукисов в нем и сохраните их на диск после чего все будет работать.
Аллюминиум… я на этом застрял год назад почти… спрашивал, никто так и не дал вразумительного ответа.
Спасибо!
Как это вообще можно сделать с помощью CURL? То есть какова последовательность действий? Видимо нужно сначала скачать картинку по ссылке, потом загрузить ее куда-то и потом в запись добавить. Вижу этот процесс примерно так, но с ходу не получилось. Прошу подсказать.
Так же есть еще большое непонимание того, как контролировать мусор. Например, попытались загрузить, загрузили, но запись в итоге не добавилась, а загруженная картинка где-то подвисла. Или при обновлении записи мы же фактически добавляем новую картинку. Нужно ли удалять старую картинку? Если не удалим, то получается мусор будет накапливаться?
Делаю так:
,'name' => new CurlFile('/upload/000/u2/e/d/c2433e23.jpg') ,'file_name' => 'My fuze file' ,'presets' => 'normal' ); curl_setopt($curl, CURLOPT_RETURNTRANSFER,true);//для возврата результата в виде строки, вместо прямого вывода в браузер }
В результате ничего не происходит. Ни ошибки, ни сообщения с пресетами. Ничего.
Что не так делаю? Почему $out_obj пустая?
А то столько времени на это убил, а получается зря.
P.S. попробовал сломать файл api_images_upload.php но даже со сломанным нет никаких ошибок. Что-то не отрабатывает?
Стоит просто включить подробный лог CURL для отладки чтобы посмотреть ваши запросы и ответы, так врядли вам кто то ответит. метод рабочий.Что не так делаю? Почему $out_obj пустая?
Всё.Что-то не отрабатывает?
// Предполагается, что после авторизации вы где-то запомнили эту куку, например в БД $cookie = ['Cookie: ' . $api_session_name . '=' . $api_session_id] 'api_key' => 'API_KEY', 'name' => 'attach_name', 'attach_name' => new CURLFile('Полный путь от корня файловой системы') )); if ($data === false) { $error = json_last_error_msg(); }
Основная проблема была как раз в "Полный путь от корня файловой системы".
и в этом было недопонимание:
'name' => 'attach_name',
'attach_name' => new CURLFile('Полный путь от корня файловой системы')
Я писал сразу
'name' => new CURLFile('Полный путь от корня файловой системы')
и получал ещ одну ошибку.
Теперь просто бомба. Наконец-то получилось передать картинку на другой сайт.
Преклоняюсь перед вашим великодушием и терпением. Спасибо!
А то там сейчас docs.instantcms.ru/manual/components/api/methods/images_upload так:
Где еще я должен авторизоваться?
тут скорее всего не где а как, ваш скрипт не работает с кукисами, если скрипт работает на curl добавьте поддержку кукисов в нем и сохраните их на диск после чего все будет работать.
примерно вот так можно
Создаем файл кукисов в папке /tmp
Столкнулся со схожей проблемой: регистрирую пользователя успешно через auth.signup. Затем хочу присвоить определенную группу этому пользователю (users.add_to_groups), и вот тут ошибка 71. При этом key и sig переданы корректные, новый user_id тоже.
Подскажите, куда копать?
Столкнулся со схожей проблемой: регистрирую пользователя успешно через auth.signup. Затем хочу присвоить определенную группу этому пользователю (users.add_to_groups), и вот тут ошибка 71. При этом key и sig переданы корректные, новый user_id тоже.
Подскажите, куда копать?
Users.add_to_group — это админский экшн, нужна авторизация под админом. А вот для автоматического назначения группы пользователю после регистрации, настраивается в админке CMS. Доп. запрос тут делать не нужно.
- Предыдущая
- 1
- 2
- 3
- Следующая
- Показаны 16-30 из 43