Làm cách nào để tìm ra phương pháp nào (thường là GET hoặc POST) được sử dụng cho yêu cầu hiện tại?Tìm hiểu phương thức HTTP trong PHP
92
A
Trả lời
165
$_SERVER['REQUEST_METHOD']
Xem the docs. Nó sẽ chứa phương thức yêu cầu trên (ví dụ: 'GET', 'HEAD', 'POST', 'PUT').
9
Trong khi kiểm tra
$_SERVER['REQUEST_METHOD']
vẻ như sự lựa chọn hiển nhiên, kể từ khi một số người đang ủng hộ superglobals giải pháp thay thế an toàn (Is using superglobals directly good or bad in PHP? và các câu hỏi tương tự), người ta có thể thực sự sử dụng autosanitizing
filter_input(INPUT_SERVER, 'REQUEST_METHOD')
(có thể với thay vào đó, một số công tắc lọc bổ sung, ví dụ: FILTER_SANITIZE_SPECIAL_CHARS
).
Tất nhiên, trong trường hợp thông thường (GET
/POST
) không có gì để vệ sinh, nhưng thói quen tốt vẫn là thói quen tốt IMO.
Các vấn đề liên quan
- 1. Tìm hiểu Type_Token.isAssignable của GuavaTừ phương thức
- 2. Hiểu phương thức $ .validator.unobtrusive.adapters.addBool()
- 3. Phương thức RESTful Http DELETE trong .NET
- 4. Đang cố gắng tìm hiểu/hiểu các phương thức setter và getter của Ruby
- 5. Tìm hiểu về cách gọi và toán tử của phương thức infix (:) trong Scala
- 6. Tìm hiểu xem phương thức có tồn tại trong một lớp tĩnh
- 7. Phương thức HTTP tùy chỉnh với Nodejs HTTP Server
- 8. Tại sao phương thức GET nhanh hơn POST trong HTTP?
- 9. Phương thức HTTP: DELETE so với POST
- 10. Gọi phương thức tĩnh động trong PHP?
- 11. lớp khó hiểu và gọi phương thức trong OpenCart
- 12. Tìm hiểu loại proxy (http, vớ 4/5) bằng Python?
- 13. Phương thức trả về phương thức: bool, string, const ... (PHP)
- 14. Tìm phương thức gọi trong Java
- 15. Tìm hiểu Joomla trong một Cuối tuần
- 16. Có thể cache các phương thức POST trong HTTP không?
- 17. Cách phát hiện phương thức HTTP trong CodeIgniter
- 18. Không thể tìm thấy phương thức InsertOnSubmit()
- 19. gọi phương thức từ phương thức khác trong cùng lớp PHP
- 20. phương thức init() v không tìm thấy
- 21. Tìm hiểu DirectX trong 2013
- 22. Tìm kiểu khai báo của phương thức
- 23. Phương thức bị thiếu trong Java hoặc PHP
- 24. gọi đến phương thức không xác định DateTime :: thêm phương thức trong php
- 25. Phương thức Yêu cầu Máy chủ PHP
- 26. Máy chủ http trong php
- 27. hiểu php curl_multi_exec
- 28. Gọi phương thức php bằng các chuỗi
- 29. Hiểu của Ruby biểu tượng như lời gọi phương thức
- 30. Cách lấy phương thức HTTP của yêu cầu REST
Nếu bạn chỉ muốn biết cho dù đó là 'GET' hoặc 'POST' hoặc tương tự, không lọc là bắt buộc. Tuy nhiên, bạn muốn kiểm tra phương thức và nếu không khớp như mong đợi, bạn có thể dự phòng lỗi "phương thức HTTP không hiểu" (mã HTTP 405). https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#405 –
@AlexisWilke như tôi đã nói, 'trong trường hợp thông thường (GET/POST) không có gì để khử trùng'; OTOH, nếu kết quả (giá trị của biến) là, ví dụ: (và vì bất kỳ lý do gì) được sử dụng thêm, ví dụ: một phần của chuỗi đầu ra hoặc phần thân kịch bản được tạo tự động và (một lần nữa, vì bất kỳ lý do gì) nếu máy chủ web bị lỗi [(và có lỗi trong máy chủ web)] (http://archive.apache.org/gnats/) và dễ bị tiêm một phương thức yêu cầu không hợp lệ, điều này có thể * có khả năng * (mặc dù nó dĩ nhiên là không chắc chắn) [kết quả trong việc thực thi mã tùy ý hoặc tạo dữ liệu] (https://xkcd.com/327/). – vaxquis