2014-04-19 25 views
9

Có định dạng chuẩn cho phép chỉ định nhiều thông số trong đoạn URI không? (phần sau mã băm #, không phải chuỗi truy vấn.)Nhiều tham số trong phân đoạn URL

Thông tin liên quan nhất sẽ là câu hỏi này: Multiple fragment identifiers correct in URL?. Các ký tự được cho phép cho các đoạn có thể được tìm thấy trong câu hỏi đó.

Nó sẽ được chấp nhận để sử dụng, ví dụ, một dấu chấm phẩy để phân định nhiều thông số như thế này:

http://example.net/page.html?q=1#param1=foo;param2=bar 

Có bất kỳ hành vi không chủ ý mà tôi cần phải nhận thức với phương pháp này? Điều gì xảy ra nếu không có ID như vậy trong tài liệu với giá trị param1?

Vì mục đích của câu hỏi này, chỉ các URI của tài nguyên HTML mới được xem xét.

Trả lời

7

Tôi nghĩ bạn nên đọc: http://en.wikipedia.org/wiki/Fragment_identifier#Examples

Vì vậy, các định dạng chuẩn de-facto cho nhiều thông số nên #param1=value1&param2=value2 Bạn có thể thấy cách này được sử dụng bởi truyền thông Những mảnh vỡ URI 1.0 và bởi các tài liệu PDF. Dường như không có tiêu chuẩn cho tài nguyên HTML mặc dù bạn có thể phân tích cú pháp đoạn trong JavaScript theo bất kỳ cách nào bạn muốn. Nhưng tôi muốn sử dụng cùng một định dạng vì nó trông tự nhiên hơn giống với định dạng chuỗi truy vấn. Nếu trình duyệt không thể tìm thấy bất kỳ phần tử nào có id/name bằng phân đoạn băm của bạn, trình duyệt sẽ điều hướng đến phần đầu của tài liệu theo mặc định.

Ngoài ra, trình duyệt sẽ xem xét phân đoạn băm hoàn chỉnh dưới dạng id/tên có thể. Vì vậy, họ sẽ tìm id/name bằng param1=value1&param2=value2 nhưng không chỉ param1.

+1

Bên cạnh đó nếu bạn quan tâm đến việc ứng dụng AJAX của bạn có thể thu thập thông tin bằng công cụ tìm kiếm, đây là hướng dẫn từ Google về việc sử dụng đoạn băm #! https://developers.google.com/webmasters/ajax-crawling/docs/getting-started?csw=1 – lagivan

Các vấn đề liên quan