Получение токена одноклассники на php, через страницу ok?

Dima83

Новичок
Здравствуйте, разбираю код работы с одноклассниками который скачал с github?

Вот пример:

PHP:
//Try to get the main page to check if we are logged in
        public function is_loged()
        {
            debug("Check if we are already logged in\n");
            $counter = OK::MAX_RETRY;
            $ok = FALSE;
            while($counter-- > 0)
            {
                //get main paige
                $page = $this->_get_page(OK::BASE_URL);
                
                //check if it has PopLayerViewFriendPhotoSticky it's our profile page else it's logon page
                if(strpos($page, 'PopLayerViewFriendPhotoSticky') !== FALSE)
                {
                    debug("We are logged in");
                    //init one token
                    $this->init_requested($page);
                    $groups;
                    
                    debug("Try to get my profile");
                    if(!preg_match_all("/href=\"\/profile\/([0-9]+?)\?st.cmd=userMain/", $page, $groups))
                    {
                        parser_error("Couldn't get my profile url");
                        continue;
                    }
                
                    $this->my_profile_id = $groups[1][0];
                    return TRUE;
                }
                
                //if we are logged out get token from logon page
                debug("We are logged out");
                $pos = strpos($page, '<form ');
                
                
                
                if($pos === FALSE)
                {
                    parser_error("Couldn't find token");
                    continue;
                }
            
                $pos = strpos($page, 'tkn=', $pos);
            
                if($pos === FALSE)
                {
                    parser_error("Couldn't find token");
                    continue;
                }
                $ss = substr($page, $pos + 4, 4);
                $this->m_main_token = $ss;
                
                return FALSE;
            }
            
            parser_die("Couldn't find token");
        }
В strpos указан ‘tkn=’, стал в интернете смотреть что это, нашел такую ссылку https://ok.ru/cdk/st.cmd/anonymMain/tkn/4662.

Перешел мне открылся “Список профилей”, прежде чем разобрать код мне нужно знать что это за ссылка и что означает каждая часть url-адреса.

cdk - ?
st.cmd - ?
anonymMain - ?
tkn - ?
4662 - ?
 

antonio

Moderator
Команда форума
https://ok.ru/cdk/st.cmd/anonymMain Это стандартная форма авторизации/регистрации в ОК.
сdk, возможно, command development kit или просто аббревиатура движка, который выполняет команды st.cmd (а может и еще много чего делает, хз)
st.cmd/функция - аналог REST функции, tkn ее параметр, возможно токен (или идентификатор) группы или, возможно, приложения OK. В общем, погугли.
 
Последнее редактирование:

Dima83

Новичок
А кто-нибудь вообще "гуглил", если да то ссылку киньте, с готовом запросом? Складывается ощущение что никто ничего не искал. Это одноклассники там информации почти нет и прежде чем задавать вопрос я всегда гуглю.
 

antonio

Moderator
Команда форума
Документация для одноклассников представлена только для REST API - это официально у них опубликовано. Все остальное - додумывай сам, ну или устройся туда работать, потом нам расскажешь - как там все устроено.
 
Сверху