application/x-www-form-urlencoded

HTTP Requests

application/x-www-form-urlencoded

Top  Previous  Next

- Chủ yếu là các loại request Đăng nhập trang, gửi thông tin lên server.

 

- DataToSend có dạng key1=value1&key2=value2&.....

 

- DataToSend thường cần phải encode các ký tự khác 0-9a-z bằng hàm _URIEncode, ví dụ:

$sData2Send = '[email protected]&pass=huân'

$sData2Send = 'email=' & _URIEncode('[email protected]') & '&pass=' & _URIEncode('huân')

 

- Ngoài ra ta có thể sử dụng hàm _Data2SendEncode để encode nhanh Data mà không cần lặp lại nhiều lần hàm

_URIEncode:

$sData2Send = _Data2SendEncode('[email protected]&pass=huân')

 

- Các ví dụ trong phần POST application/x-www-form-urlencoded

 

 

* Sau khi đọc các Ví dụ, thì có vài lưu ý nhỏ cho người đã đọc bài viết và còn lúng túng về phần POST khi dữ liệu gửi (DataToSend) có thành phần lạ như Token, ID hoặc cái gì đó mà giá trị của nó là một chuỗi ngẫu nhiên (ví dụ như hình dưới, cái _xfToken chẳng hạn) thì làm sao để lấy được giá trị đó, sẽ có vài trường hợp xảy ra, hãy kiểm tra theo thứ tự sau:

 

·TH1: Chuỗi đó sẽ nằm ở cái Set-Cookie ở request trước đó, tìm trong Live HTTP Headers hoặc Notepad (đã xuất từ Live HTTP Headers ra) xem có hay không. Nếu không tìm thấy gì thì chuyển qua tìm tiếp như trường hợp 2.

 

·TH2: Ta sẽ request cái địa chỉ Referer (kiểu GET) và lưu source Html đã request được vào Clipboard bằng hàm ClipPut để tìm trong source có chứa giá trị lạ cần tìm không. Ví dụ: Xem hình bên dưới, Referer là http://abcweb.com/index.php/login, ta có:

$RQ_Referer = _HttpRequest(2, http://abcweb.com/index.php/login)

ClipPut($RQ_Referer)

Sau đó Paste source đã lưu ra Notepad hoặc trang SciTE mới. Dùng chức năng Search để tìm giá trị cần tìm, ví dụ như hình thì mình cần tìm giá trị thằng _xfToken thì search (Ctrl + F): _xfToken. Xong xuôi nếu tìm được thì dùng hàm StringRegExp để tách lấy cái giá trị của _xfToken là xong.​

 

·TH3: Làm như TH2, nhưng search giá trị cần tìm không ra hoặc ra nhưng nó để là rỗng ("") => vậy là giá trị này nó "giấu" trong mã javascrip rồi. Gặp mã javascrip dễ bạn vẫn có thể dễ dàng chuyển sang mã AutoIt tương ứng để giải quyết, còn nếu khó và phức tạp thì phải kết hợp với IE hoặc bỏ cuộc thôi :v

 

 

Hình Ví dụ mẫu

POSTExampleMark