Tôi đang cố gắng tìm ra lý do tại sao các phương pháp đưa/xóa, trong trang web hỗ trợ HTML5, không hoạt động với Chrome. Từ những gì tôi đã tìm kiếm, có vẻ như nó đã được làm việc một thời gian với Chrome, vì vậy với điều đó nói rằng tôi chỉ tìm kiếm một vài gợi ý để thu hẹp vấn đề của tôi. Có lẽ tôi đang thực hiện các hình thức sai, có lẽ doctype của tôi là sai, những người hiểu biết. Any help is appreciated :)Phương pháp PUT/DELET HTML5 không hoạt động trong Chrome?
Vì vậy, các mã trông như thế này:
<!DOCTYPE html>
<html>
<head>
<title>
some_resource
</title>
</head>
<body>
<div class="content">
<form method="put" action="/some_resource">
<div>
<input id="title" name="title" placeholder="The Resource Title" type="text" value="" autofocus />
</div>
<div>
<textarea id="body" name="body" placeholder="The Resource Body" required></textarea>
</div>
<div>
<input id="submit" name="submit" type="submit" value="Submit" />
</div>
<!-- Resource Settings -->
<ul>
<li>
<input id="listed" name="listed" type="checkbox" value="y" />
</li>
<li>
<input id="template" name="template" type="text" value="resource.html" />
</li>
</ul>
</form>
</div>
</body>
</html>
Chỉ cần một thử nghiệm cơ bản cho một biểu mẫu. Bây giờ tôi đã thử nó trên mới nhất của Ubuntu Firefox (3.6.7), Opera (10.60 Internal), và Linux Chrome Beta mới nhất từ Google (5.0.375.99 beta). Không ai trong số họ dường như gửi phương thức đặt thích hợp cho máy chủ, khi tôi gửi biểu mẫu. Bây giờ, tôi tin (không phải từ bất kỳ nghiên cứu cụ thể nào) mà Firefox vẫn chưa hỗ trợ điều này, và giống như rất nhiều HTML5, nó được lên kế hoạch cho phiên bản tiếp theo của FF. Opera tôi không biết về, nhưng tôi thường nghe về nó giữ tốc độ với Chrome. Vì vậy, .. yea, tôi là một chút bối rối.
Khi gửi biểu mẫu, họ truy cập url: http://localhost:8080/some_resource?title=t&body=b&submit=Submit&template=resource.html
. Lưu ý rằng, như dự kiến, POST hoạt động tốt.
Bây giờ, có ai có bất kỳ gợi ý nào để phương pháp đặt hoạt động không? Có thể là bản beta cho Linux đơn giản là không được cập nhật cho phiên bản Windows (một cái gì đó tôi giả định, là những gì mọi người nói về khi tôi thấy PUT làm việc cho Chrome), nhưng tôi thực sự hy vọng nó là một vấn đề với việc triển khai của tôi.
Máy chủ có hỗ trợ PUT/DELETE không? (Tôi đang sử dụng AppEngine Dev Server hiện tại). Tôi không biết .. hy vọng ai đó có một số ý tưởng :)
Nhờ bất kỳ trả lời, Lee
Lưu ý: tính năng HTML5 khác tôi đã thử nghiệm cho đến nay đang làm việc. Ví dụ, trong hình thức đó bạn có thể thấy tự động lấy nét và các thuộc tính bắt buộc. Những người đang làm việc như dự định trong Chrome.
Chỉnh sửa1: Chỉ cần làm rõ, tôi hiểu hỗ trợ cho những điều này là sơ sài. Như tôi đã trả lời một câu trả lời trước đó, tôi không quan tâm đến sự hỗ trợ hiện tại trong các trình duyệt khác. Hiện tại Chrome là những gì tôi muốn làm việc, và tôi hy vọng Firefox sẽ làm việc trong bản phát hành sắp tới (tôi không biết, tôi chỉ nghe họ đẩy HTML5 rất nhiều), và tôi không có ý tưởng về Opera.
Tất cả điều này chỉ đơn giản là để thử nghiệm và tìm hiểu thế giới tuyệt vời mới của HTML5 (Web Workers, localStorage, vv) và CSS3. Tôi chỉ quan tâm đến các trình duyệt cạnh chảy máu, phù hợp với công nghệ xuất huyết cạnh nhau :)
'PUT' và' DELETE' không liên quan gì đến HTML5; chúng được định nghĩa trong đặc tả HTTP/1.1. Hỗ trợ phải có mặt trên cả hai máy khách (để gửi) và máy chủ (để xử lý) bên. – You
Yea và cách sử dụng, như được cho phép là HTML5, là điều tôi rất vui mừng. Câu hỏi là .. tại sao nó không hoạt động: /. Địa ngục, một số người nói rằng một tấn các thuộc tính hiện đang được hỗ trợ, nhưng tôi thậm chí không thể có được PUT/DELETE làm việc. Argh –
Có một dự thảo để có được những động từ được hỗ trợ chính thức. Tôi không có đầu mối về lý do tại sao nó mất quá lâu, như PUT/DELETE đã là một phần của HTTP cho các lứa tuổi. Xem http://amundsen.com/examples/put-delete-forms/ để biết thêm thông tin. Cho đến khi bản nháp đó được chấp nhận, các trình duyệt đơn giản sẽ không gửi bất cứ điều gì khác ngoài GET và POST. –