Страница 1 из 1

OPEN API

Добавлено: 26 мар 2013, 18:50
bikerdimon
Здравствуйте, столкнулся вот с чем, нужно через крон добавить к примеру лайк к записи
использую
<script src='https://api.vk.com/method/likes.add?own ... token=свой аккес'></script>
через крон не работает, если же открыть вручную эту страницу, то все работает, хотелось бы знать почему и как это можно исправить?
Заранее спасибо

Re: OPEN API

Добавлено: 30 мар 2013, 18:47
Александр
bikerdimon
Бред какой-то. Как Open Api связывать в кроном? Зачем? Или тема просто так называется "OPEN API"?

Есть понимание как работает Open Api? А понимание как работает крон?
Крон обратиться к скрипту, но это не браузер. Яваскрипт не отработает.
Даже если бы отработал, то лайк бы от кого добавился? От сервера? У сервера есть свой аккаунт ВКонтакте?

Ко всему этому ещё и метод likes.add доступен только Desktop-приложениям, а не сайтам.

Какая задача всего этого?

Re: OPEN API

Добавлено: 31 мар 2013, 14:16
bikerdimon
Пойми, если я так написал и хочу это сделать, значит все должно работать, если есть сомнения, то обратись к документации контакта или сам протести, по поводу того, что крон не воспроизводит яваскрипт не знал. ну а каким образом тогда можно сделать, но чтобы не использовать функцию file_get_contents?

Re: OPEN API

Добавлено: 31 мар 2013, 20:41
Александр
bikerdimon
Авторизация через Open API – альтернативный способ авторизации, использующий клиентскую Javascript-библиотеку. Данный способ авторизации применяется в случае необходимости вызова методов API не только с сервера сайта, но и из браузера пользователя.
Почему Open API, а не OAuth? Вот в чем бред - сделать обращение из браузера пользователя на своем сервере.

Для OAuth есть параметр offline - Доступ к API в любое время со стороннего сервера.
http://vk.com/dev/permissions

Почему не работает на сервере можно узнать посмотрев какой ответ возвращает сервер API при вызове метода со своего сервера.
Но и без этого логично предположить что:
Есть твой компьютер, на котором ты авторизован ВКонтакте. У тебя свой IP адрес.
Есть сервер, на котором ты не авторизован ВКонтакте. У сервера свой IP адрес.

Для вызова метода ВКонтакте API может требоваться авторизация и access_token.
access_token вероятно генерируется с учетом IP адреса. В таком случае access_token сгенерированный на клиенте не подойдет для использования на сервере.

Какие причины не использовать file_get_contents? curl тоже не подойдет?
Я не знаю способов обратиться по крону и при этом выполнить клиентское обращение. Если узнаешь - расскажи.