Что нового

VK API UDF - библиотека для работы с Vkontakte API

lacoil

Новичок
Сообщения
9
Репутация
1
а, сорри, конечно, перечислял через запятую, это многострадальные изыски :smile:
через запятую 1,2 даже просто в запросе в браузере выдаёт ошибку 113 :mad:
 

lacoil

Новичок
Сообщения
9
Репутация
1
И очередной вопрос - как получить uid пользователя, который прошёл аутентификацию приложения, т.е. самого себя?
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
lacoil
Посмотрите массив $aA.
 

Guezt

Продвинутый
Сообщения
335
Репутация
82
lacoil [?]
Если кому интересно, то Logout из приложения можно выполнить так:
Спасибо за пример! вопрос почему я не нашел его в ВК можжно ткнуть носом если можно = ) хорошо бы включить в VKAPI
Medic84 все так и жду релиза если не сложно можно то что есть как то заполучить?! :whistle:
 

BestProTop

http://www.about.me/bestprotop
Сообщения
28
Репутация
3
Спасибо большое 8) - долго иска для Ауита 8) - дописал финкции по Видео - короче наглядно 8)
 

BestProTop

http://www.about.me/bestprotop
Сообщения
28
Репутация
3
Ребят - я походу допрограмился и че-то сломал 8(
- проверте работает либа или перестала 8(
Если брать пример выложенный автором - то терь у мя выдает такую вот ошибку 8(
====
Subscript used with non-Array variable.:
$aSt = StringRegExp(_VK_statusGet($aA[1]), "(?s)<text>(.*?)</text>", 1)
$aSt = StringRegExp(_VK_statusGet($aA^ ERROR
====
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
переделал чуток

Код:
Func __guiAccessToken($_sURI, $_sGUITitle, $_sRedirect_uri)
	Local $oIE = _IECreateEmbedded()
	Local $hTimer = TimerInit()

	$_hATgui = GUICreate($_sGUITitle, 400, 300, -1, -1, $WS_SYSMENU)
	GUICtrlCreateObj($oIE, 5, 5, 385, 260)

	_IENavigate($oIE, $_sURI)
	$sResponse = _IEBodyReadText($oIE)

	If StringInStr($sResponse, "Login success") Then
		$sURL = _IEPropertyGet($oIE, "locationurl")
		Return __responseParse($sURL)
	EndIf

	GUISetState(@SW_SHOW)

	While 1
		If GUIGetMsg()=$GUI_EVENT_CLOSE Then
			Exit
		ElseIf TimerDiff($hTimer) > 50 Then
			$sURL = _IEPropertyGet($oIE, "locationurl")
			If StringInStr($sURL, $_sRedirect_uri & "#") Then
				GUISetState(@SW_HIDE)
				$sResponse = _IEBodyReadText($oIE)
				If StringInStr($sResponse, "Login success") Then
					GUIDelete($_hATgui)
					Return __responseParse($sURL)
				Else
					GUIDelete($_hATgui)
					Return SetError(-1,0,-1)
				EndIf
			ElseIf StringInStr($sURL,'error') Then
				Exit
			EndIf
			$hTimer = TimerInit()
		EndIf
	WEnd
EndFunc

P.S. не хватает сообщений об ошибках
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
[info]
iv1xUf15siHUg.png

Авторы: Medic84, Fever
Ссылка: GitHub
[/info]
Проект теперь на GitHub
Оставляем свои пожелания, исправления и т.п. что можно на GitHub :-X
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
Medic84
Код:
; #FUNCTION# =================================================================================================
; Name...........: _VK_wallDelete()
; Description ...: Возвращает все фотографии пользователя или группы в антихронологическом порядке.
; Syntax.........: _VK_wallDelete($_sAccessToken, $_sPost_ID, $_sOwner_ID = "")
; Parameters ....: $_sAccessToken - ключ доступа выданный функцией авторизации.
;                  $_sPost_ID - идентификатор записи на стене пользователя.
;                  $_sOwnerID - идентификатор пользователя, на чьей стене необходимо удалить запись. Если параметр не задан, то он считается равным идентификатору текущего пользователя.
; Return values .: Успех - 1 и @error = 0.
;                  Неудача - Ошибка выданная сайтом и @error = 1
; Author ........: Medic84
; Remarks .......: Для вызова этой функции приложение должно иметь права с битовой маской, содержащей 8192.
; ============================================================================================================

вторая строчка явно не отсюда

З.Ы. Будут ли остальные функции, в т.ч. использующие расширенный метод?
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
DarWiM
Будут реальзованы большинство функций описанных в документации API VK, но как Вы понимаете не сразу...
Я просто только что восстановил проект. Нам негде было его совместно реальзовывать, а GitHub без их программы был очень сложен в понимании, да и сейчас я его не очень хорошо понимаю...
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
Medic84
Просто не хочется изобретать велосипед.. Ведь Вы это сделаете гораздо качественней :smile:
 

Arei

Скриптер
Сообщения
938
Репутация
115
Можете реализовать скачку видео файлов или получение на них прямых ссылок?
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
думаю это может помочь
http://habrahabr.ru/post/135323/
http://it-route.ru/direct_video_link/
 

Arei

Скриптер
Сообщения
938
Репутация
115
DarWiM
Чувак спасибо, я поиском пользоваться умею, а я спрашивал Medic84
планирует ли он добавить этот функционал в библиотеку.
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
Arei
Повторяю для тех кто в танке:

Medic84 [?]
Будут реальзованы большинство функций описанных в документации API VK, но как Вы понимаете не сразу...
 

Arei

Скриптер
Сообщения
938
Репутация
115
Medic84
Спасибо, я как раз в танки играл.
 

SECTOR

Продвинутый
Сообщения
399
Репутация
59
Вот смотрю на функции и думаю... Как мне получить ID того, кто запустил скрипт и авторизовался? Может я слепой... Или ленивый :whistle:
Помогите :smile:
 

DarWiM

Продвинутый
Сообщения
527
Репутация
90
SECTOR
Вообще в последней версии UDF этого вроде нет. Не плохо бы назначить глобальную переменную и в функции __responseParse добавить изменение этой переменной. А при использовании хорошо бы выполнять проверку.. :smile:

Например так:
Код:
; начало
Global $User_ID
; функция
Func __responseParse($_sResponse)
	Local $aNArray = StringSplit($_sResponse, "&"), $aResArray[UBound($aNArray)], $_sStr
	$aResArray[0] = UBound($aNArray) - 1

	For $i = 1 To $aNArray[0]
		$_sStr = StringSplit($aNArray[$i], "=")
		$aResArray[$i] = $_sStr[2]
	Next

	$User_ID=$aResArray[3]

	Return $aResArray[1]
EndFunc   ;==>__responseParse
; при использовании
If $User_ID<>'' Then ...

Или можно изначально присваивать значение Null
 

SECTOR

Продвинутый
Сообщения
399
Репутация
59
Для себя изменил в функции __guiAccessToken
Код:
If StringInStr($sResponse, "Login success") Then
        $sURL = _IEPropertyGet($oIE, "locationurl")
        Return __responseParse($sURL)
    EndIf

на
Код:
If StringInStr($sResponse, "Login success") Then
        $sURL = _IEPropertyGet($oIE, "locationurl")
		Global $vc_UserID = StringRegExpReplace($sURL,"(.*)user_id=(\w+)(.*)$","\2")
        Return __responseParse($sURL)
    EndIf


DarWiM, немного опередили :smile:
 

Medic84

Омега
Команда форума
Администратор
Сообщения
1,590
Репутация
341
DarWiM
Тако вот и давайте все предложения по улучшению писать на GitHub, это же социальный кодинг :smile:

Можно исправлять код, добавлять и т.п (Pull Request). А если сами люди поправить не знают как код - есть предложения. (Issue)
 
Верх