Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Поиск рулит! Сообщения за день Все разделы прочитаны
 

Вернуться   Форум Flasher.ru > Flash > API приложений и сред

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 23.08.2014, 02:46
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 1  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
По умолчанию Авторизация пользователя ВК на сервере

Привет всем!
Нужно произвести проверку пользователя на сервере.
Вроде все так просто, но все время возвращается false.
Все параметры приходят правильные, проверял 100 раз.
PHP код:
<?php
class Auth
{
    var 
$appID '123456789';
    var 
$secretKey 'QWERTY';

    public function 
check($socialID$authKey
    {
        
$realKey md5($appID."_".$socialID."_".$secretKey);
        if (
$authKey == $realKey)
        {
            return 
true;
        }
        else
        {
            return 
false;
        }
    }
}
?>
P.S. Может этот способ уже не работает?

Старый 23.08.2014, 07:53
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 2  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Это же php) в нем много странностей для флешера
PHP код:
    var $appID '123456789'
    var 
$secretKey 'QWERTY'

    public function 
check($socialID$authKey)  
    { 
        
$realKey md5($this->$appID "_" $socialID "_" $this->$secretKey); 
        if (
$authKey == $realKey
        { 
            return 
true
        } 
        else 
        { 
            return 
false
        } 
    } 

Хотя вообще я бы лучше это в статический метод вынес. Ну или можно appID и secretKey вообще сделать константами
__________________
Ко мне можно и нужно обращаться на ты)

Старый 23.08.2014, 10:57
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 3  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
caseyryan, спасибо огромное, подзабыл я немного ПХП.)
То есть можно использовать этот метод так?
PHP код:
public static function check($socialID$authKey
{
    
$realKey md5(self::APP_ID "_" $socialID "_" self::SECRET_KEY);
    if (
$authKey != $realKey)
    {
        throw new 
Exception("Authentication key is not valid");
    }
}

...
// Вызываем где нужно в методе
Auth::check($socialID$authKey); 
Но тогда придется передавать каждый раз auth и socialID для проверки пользователя? Это нормально?

Старый 23.08.2014, 13:27
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 4  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
Цитата:
Но тогда придется передавать каждый раз auth и socialID для проверки пользователя? Это нормально?
Конечно. А как иначе? Там же разные пользователи будут проверяться
Цитата:
PHP код:
$realKey md5(self::APP_ID "_" $socialID "_" self::SECRET_KEY); 
Ну, константы в пыхе через define() определяются. Но это не так важно, такой вариант тоже будет нормально работать
__________________
Ко мне можно и нужно обращаться на ты)

Старый 23.08.2014, 20:11
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 5  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
Вопрос по отправке каждый раз socialID и authKey решил так:
Использую маппинг для обмена между клиентом и сервером. На клиенте есть базовый для всех класс, в конструкторе которого проходит присвоение значений нужным переменным. Остается только расширить этот класс и вызвать родительский конструктор. Как такая идея?
Код AS3:
package core.vo 
{
	import model.SocialProxy;
	/**
	 * ...
	 * @author alexandrratush
	 */
	[RemoteClass(alias="core.vo.AuthData")]
	public class AuthData 
	{
		public var socialID:String;
		public var authKey:String;
		public var status:Boolean;
 
		public function AuthData()
		{
			socialID = SocialProxy.socialID;
			authKey = SocialProxy.authKey;
		}
 
	}
 
}

Старый 23.08.2014, 20:24
caseyryan вне форума Посмотреть профиль Отправить личное сообщение для caseyryan Найти все сообщения от caseyryan
  № 6  
Ответить с цитированием
caseyryan
 
Аватар для caseyryan

Регистрация: Jun 2012
Адрес: Новосибирск
Сообщений: 6,644
Записей в блоге: 4
У меня вообще используется класс Packet, который разруливает все отправки на сервер. Передаю туда любые параметры, а он внутри сам еще добавляет authKey и viewer_id ко всем запросам. Так что вообще не парюсь. Собственно, решение почти такое же. С некоторыми нюансами, например тем, что не надо расширять класс, а можно использовать его самостоятельно
__________________
Ко мне можно и нужно обращаться на ты)

Старый 23.08.2014, 21:02
alexandrratush вне форума Посмотреть профиль Отправить личное сообщение для alexandrratush Найти все сообщения от alexandrratush
  № 7  
Ответить с цитированием
alexandrratush
 
Аватар для alexandrratush

Регистрация: Jul 2013
Адрес: Днепр
Сообщений: 529
Отправить сообщение для alexandrratush с помощью ICQ Отправить сообщение для alexandrratush с помощью Skype™
Тоже думал использовать такой подход, но решил делать связь между клиентом и сервером с помощью VO, который поддерживает AMFPHP. Отсюда и мой подход мне кажется более удачным. Посмотрю что из этого получится.

Создать новую тему Ответ Часовой пояс GMT +4, время: 14:04.
Быстрый переход
  « Предыдущая тема | Следующая тема »  
Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 14:04.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.