Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobieranie token
janmaniek
post
Post #1





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.02.2014

Ostrzeżenie: (0%)
-----


Witam, mógłby mi ktoś pomóc z funkcją preg_match, bo robię skrypt i potrzebuję aby, token był automatycznie pobierany ze strony.

Tutaj jest ta funkcja (jak mam tak zrobione to nie chce dziłać) :
  1. protected function extractTokenFromLoginForm($html) {
  2. // <input type="hidden" name="t" value="UJygzfv9DLLCS-is7cLwgG7z" />
  3. //
  4. if (!preg_match('#<input name="t" value="([A-Za-z0-9_-]+)" type="hidden">#', $html, $matches))
  5. throw new Exception('Cannot extract login CSRF token.', self::CODE_SCRAPING_LOGIN);
  6. return $matches[1];
  7. }


A tutaj jest przykładowy token :
  1. <input name="t" value="c6XEy2NJYmyitA7wVgSYgmfs" type="hidden">
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
janmaniek
post
Post #2





Grupa: Zarejestrowani
Postów: 8
Pomógł: 0
Dołączył: 12.02.2014

Ostrzeżenie: (0%)
-----


tutaj jest funkcja logowania
  1. protected function login() {
  2. $data = $this->request(self::HTTPS_DROPBOX_COM_LOGIN);
  3. $token = $this->extractTokenFromLoginForm($data);
  4.  
  5. $postData = array(
  6. 'login_email' => (string) $this->email,
  7. 'login_password' => (string) $this->password,
  8. 't' => $token
  9. );
  10. $data = $this->request(self::HTTPS_DROPBOX_COM_LOGIN, http_build_query($postData));
  11.  
  12. if (stripos($data, 'location: /home') === FALSE)
  13. throw new Exception('Login unsuccessful.', self::CODE_LOGIN_ERROR);
  14.  
  15. $this->loggedIn = TRUE;
  16. }


a tutaj zawartość self::HTTPS_DROPBOX_COM_LOGIN
  1. const HTTPS_DROPBOX_COM_LOGIN = 'https://www.dropbox.com/login';


Ten post edytował janmaniek 13.02.2014, 21:36:40
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 10.10.2025 - 07:39