Вверх ↑
Этот топик читают: Гость
Ответов: 286
Рейтинг: 5
#1: 2017-09-28 14:24:33 ЛС | профиль | цитата
Авторизовываюсь на сайте успешно.В ответ приходят данные

Name Type Value

access_token object "bc00a9016b5ec5c94b38b85a0dbf78243df0e7d318b2d098ab90a2354377e5dbdacf8fc99552e6195d3f1"
expires_in object 0
user_id object 290101565
secret object "ca82c71241df9321ce"

В следующем запросе мне необходимо сгенерировать sig
В документации по апи написано следующие:

Подпись для стандартных запросов:

sig = md5(viewer_idname1=value1name2=value2secret)


В данном случае sig равен md5("6492api_id=4method=getFriendsv=3.0secret") то есть ec88fbee10af1b28c41c5b2e85ae0502

Третий день не могу правильно составить sig

Редактировалось 2 раз(а), последний 2017-09-28 14:53:03
карма: 0

0
vip
#1.1контекстная реклама от партнеров
Ответов: 286
Рейтинг: 5
#2: 2017-09-29 14:56:23 ЛС | профиль | цитата
Господа ну отправьте хоть на...н че нет спецов.Не верю.
карма: 0

0
Ответов: 4612
Рейтинг: 746
#3: 2017-09-29 15:26:29 ЛС | профиль | цитата
Ну, ты же вроде не сегодняшний. Думаешь, кто-то сможет и захочет на основе твоих данных лезть читать документацию по API Контакта, искать что там за сигнатура, как генерируется, где применяется?
Выкладывай минимальную схему, ссылки на документацию и примеры, может и поможем.
карма: 26

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#4: 2017-09-29 15:37:16 ЛС | профиль | цитата
Ради интереса пролистал мануал по API Vk -- https://vk.com/dev/manuals, но в упор не нашел, где там используется sig. Токен используется в запросах, а вот sig -- ??? Конкретно, где про этот sig написано?
карма: 22

0
Ответов: 286
Рейтинг: 5
#5: 2017-09-29 16:32:50 ЛС | профиль | цитата
Уважаемый nesco вот это именно из документации по айпи
Подпись для стандартных запросов:
sig = md5(viewer_idname1=value1name2=value2secret)

Запрос на авторизацию делаю такой
https://oauth.vk.com:443/token?grant_type=password&scope=nohttps&client_id=2274003&client_secret=hHbZxrka2uZ6jB1inYsH&username=89141339608&password=бла-бла-бла
Авторизация успешна приходит ответ
Name Value
access_token "bc00a9016b5ec5c94b38b85a0dbf78243df0e7d318b2d098ab90a2354377e5dbdacf8fc99552e6195d3f1"

expires_in 0

user_id 290179378

secret "ca82c71241df9321ce"

Следующий запрос
https://api.vk.com:443/method/execute.getUserInfo?access_token=bc00a9016b5ec5c94b38b85a0dbf78243df0e7d318b2d098ab90a2354377e5dbdacf8fc99552e6195d3f1&sig=0ca8ffb0d25fe3d6d0c77bbb2abbfff8

И вот тут вылазит sig

В документации по апи написано
Как создавать подпись запроса?
Параметр sig равен md5 от конкатенации следующих строк:

пар "parameter_name=parameter_value", расположенных в порядке возрастания имени параметра.
защищенного секрета приложения api_secret (защищенный секрет Вы можете узнать во вкладке Платежи при редактировании приложения).


sig = md5(name1=value1name2=value2api_secret)
Все это я уже не раз прочитал и попробывал.Не могу понять что подставлять в параметры name1=value1name2=value2

--- Добавлено в 2017-09-29 16:41:11

Извините что может навязчив.Уважаемый Netspirit написав такие классные компаненты я не поверю что ты не разу не копал в сторону айпи

Редактировалось 1 раз(а), последний 2017-09-29 16:41:11
карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#6: 2017-09-29 17:02:10 ЛС | профиль | цитата
Udokanec писал(а):

В документации по апи написано

Можешь дать конкретную ссылку на это место в документации?
карма: 22

0
Ответов: 4612
Рейтинг: 746
#7: 2017-09-29 17:10:41 ЛС | профиль | цитата
Udokanec писал(а):
я не поверю что ты не разу не копал в сторону айпи
Поверь, меня вообще не было и нет во ВКонтакте, и ему подобных местах.
Udokanec писал(а):
sig = md5(name1=value1name2=value2api_secret)
Все это я уже не раз прочитал и попробывал.Не могу понять что подставлять в параметры name1=value1name2=value2
Судя по этому описанию (https://vk.com/pages?oid=-17680044&p=Application_Interaction_with_API) ты ошибся в исходной строке. Должно быть:
sig = md5(viewer_idname1=value1name2=value2secret)
Нужен ещё viewer_id. Не знаю, равен ли он user_id. Там же есть примеры.

In this case sig equals md5("6492api_id=4method=getFriendsv=2.0secret") i.e. b499ce268e9995a08b2f2aebff2488be

В параметры подставляешь то, что предлагается в описании метода. Параметры при вычислении sig располагаются в алфавитном порядке.

Редактировалось 3 раз(а), последний 2017-10-02 11:20:27
карма: 26

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#8: 2017-09-29 17:19:46 ЛС | профиль | цитата
Netspirit писал(а):
Судя по этому описанию

Эта страница ведет в никуда.
карма: 22

0
Ответов: 286
Рейтинг: 5
#9: 2017-09-29 17:22:11 ЛС | профиль | цитата
nesco вот
https://vk.com/page-1_2372591
Netspirit ты прав sig = md5(viewer_idname1=value1name2=value2secret)
viewer_id это id приложения в моем случае это 2274003 Секрет то же понятно где взять а вот что подставлять вместо name1=value1name2=value2
карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#10: 2017-09-29 18:02:21 ЛС | профиль | цитата
Че-то я не понял проблему

md5("api_id=4method=secure.getAppBalancerandom=83962759timestamp=1238714241v=2.0api_secret")

У меня получился ихний sig, с ихними параметрами

Схема

Add(MainForm,2953706,168,175)
{
}
Add(Edit,13782829,224,175)
{
Left=10
Top=10
Width=365
Text="api_id=4method=secure.getAppBalancerandom=83962759timestamp=1238714241v=2.0api_secret"
}
Add(Edit,6378784,350,231)
{
Left=10
Top=40
Width=370
Text=""
}
Add(Button,7821496,168,231)
{
Left=170
Top=70
TabOrder=-1
link(onClick,4759444:doHashsum,[])
}
Add(Hashsum,4759444,224,231)
{
link(onResult,11835991:doModify,[])
link(Data,13782829:Text,[])
}
Add(StrCase,11835991,280,231)
{
link(onModify,6378784:doText,[])
}


--- Добавлено в 2017-09-29 19:00:08

Здесь видно, что параметры расположены в порядке возрастания имени парметра, а вот в запросе они могут располагаться как попало, но должны быть все посчитанные, кроме api_secret

http://api.vkontakte.ru/api.php?api_id=4&v=2.0&method=secure.getAppBalance&timestamp=1238714241&random=83962759&sig=7598d64720bb39544679f2ca256fa538

Редактировалось 10 раз(а), последний 2017-09-29 19:05:42
карма: 22

0
Ответов: 537
Рейтинг: 14
#11: 2017-09-29 22:12:48 ЛС | профиль | цитата
А если с браузера зайти автоматом, (заполнить поля и войти)то может это проще. Получить кукисы
карма: 4

0
Ответов: 286
Рейтинг: 5
#12: 2017-10-01 02:39:30 ЛС | профиль | цитата
А по моему запросу
https://api.vk.com:443/method/execute.getUserInfo?access_token=bc00a9016b5ec5c94b38b85a0dbf78243df0e7d318b2d098ab90a2354377e5dbdacf8fc99552e6195d3f1&sig=0ca8ffb0d25fe3d6d0c7

Получается так что ли
md5("2274003method=execute.getUserInfohHbZxrka2uZ6jB1inYsH")
Sig не сходится
карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#13: 2017-10-01 03:10:09 ЛС | профиль | цитата
Udokanec писал(а):
А по моему запросу

Где ты увидел в защищенном соединении отправку токена? В примере же видно, что токен не отправляется, а отправляются определенные параметры и ихняя подпись sig, и защищенный запрос отправляется на страницу ttp://api.vkontakte.ru/api.php, а не куда попало. Там про это даже конкретно написано
Защищенное взаимодействие писал(а):
Взаимодействие приложения с API ВКонтакте производится путем создания HTTP-запроса (POST или GET) к http://api.vkontakte.ru/api.php

карма: 22

0
Ответов: 286
Рейтинг: 5
#14: 2017-10-01 03:15:03 ЛС | профиль | цитата
Запрос
https://api.vk.com:443/method/execute.getUserInfo?access_token=bc00a9016b5ec5c94b38b85a0dbf78243df0e7d318b2d098ab90a2354377e5dbdacf8fc99552e6195d3f1&sig=0ca8ffb0d25fe3d6d0c7
я взял из программы VKMisic
карма: 0

0
Разработчик
Ответов: 26061
Рейтинг: 2120
#15: 2017-10-01 03:23:15 ЛС | профиль | цитата
Udokanec писал(а):
Запрос

Твой запрос не вмещается в экран, ограни его в теги цитата или код
карма: 22

0
Сообщение
...
Прикрепленные файлы
(файлы не залиты)