Thông tin: HTTP GET và HTTP POST được tắt theo mặc định

QUAN TRỌNG: Bài viết này được dịch bằng phần mềm dịch máy của Microsoft chứ không phải do con người dịch. Microsoft cung cấp các bài viết do con người dịch và cả các bài viết do máy dịch để bạn có thể truy cập vào tất cả các bài viết trong Cơ sở Kiến thức của chúng tôi bằng ngôn ngữ của bạn. Tuy nhiên, bài viết do máy dịch không phải lúc nào cũng hoàn hảo. Loại bài viết này có thể chứa các sai sót về từ vựng, cú pháp hoặc ngữ pháp, giống như một người nước ngoài có thể mắc sai sót khi nói ngôn ngữ của bạn. Microsoft không chịu trách nhiệm về bất kỳ sự thiếu chính xác, sai sót hoặc thiệt hại nào do việc dịch sai nội dung hoặc do hoạt động sử dụng của khách hàng gây ra. Microsoft cũng thường xuyên cập nhật phần mềm dịch máy này.

Nhấp chuột vào đây để xem bản tiếng Anh của bài viết này:819267
Bài viết này đã được lưu trữ. Bài viết được cung cấp "nguyên trạng" và sẽ không còn được cập nhật nữa.
TÓM TẮT
Bài viết này thảo luận về những thay đổi trong các.NET Framework 1.1 đó ảnh hưởng đến các HTTP GET phương pháp và các HTTP POST phương pháp trên máy chủ Web. Bài viết này cũng mô tả cách giải quyết Đối với tính năng mới này.
THÔNG TIN THÊM
Các.NET kết nối Web dịch vụ hỗ trợ HTTP nhận, HTTP đăng và các giao thức xà phòng. Theo mặc định, trong.NET Framework 1.0, tất cả ba các giao thức có hiệu lực. Theo mặc định, trong.NET Framework 1.1, HTTP nhận được và HTTP bài đều vô hiệu hoá. Đây là lý do an ninh.

Các ứng dụng sử dụng HTTP nhận được hoặc HTTP POST để gọi một dịch vụ Web thất bại khi dịch vụ Web được nâng cấp lên .NET Framework 1.1. Các ứng dụng này nhận được một
System.net.WebException
thông báo lỗi cho biết các định dạng yêu cầu là không nhận dạng được.

Lưu ý rằng các hình thức HTML dựa trên thử nghiệm sử dụng HTTP đăng bài, và do đó các hình thức HTML dựa trên thử nghiệm không hoạt động.NET Khuôn khổ 1.1. Điều này là đúng trừ tại một trong những localhost như đã nêu dưới đây.

Các .NET Framework 1.1 định nghĩa một giao thức mới được đặt tên theo HttpPostLocalhost. Theo mặc định, giao thức mới này được kích hoạt. Giao thức này cho phép gọi dịch vụ Web sử dụng HTTP bài yêu cầu từ các ứng dụng trên cùng một máy tính. Điều này là đúng miễn là POST URL sử dụng http://localhost, không http://hostname. Điều này cho phép nhà phát triển dịch vụ Web để sử dụng HTML dựa trên thử nghiệm hình thức gọi dịch vụ Web từ cùng một máy tính nơi mà các dịch vụ Web cư trú.

Khi bạn cố gắng truy cập vào các dịch vụ Web từ một từ xa máy tính bạn không thấy các nút Invoke. Và, bạn nhận được lỗi sau thông báo:

Mẫu thử nghiệm là chỉ dành cho yêu cầu từ máy địa phương

Giải pháp

HTTP nhận được và HTTP bài có thể được kích hoạt bằng cách chỉnh sửa Web.config tệp cho vroot nơi cư trú của các dịch vụ Web. Các cấu hình sau cho phép cả HTTP nhận được và HTTP sau:
<configuration>    <system.web>    <webServices>        <protocols>            <add name="HttpGet"/>            <add name="HttpPost"/>        </protocols>    </webServices>    </system.web></configuration>
Ngoài ra, bạn có thể bật những giao thức này cho tất cả các dịch vụ Web máy tính bằng cách chỉnh sửa phần <protocols>, Machine.config. Các Ví dụ sau cho phép HTTP nhận được, HTTP đăng bài, và cũng xà phòng và HTTP đã đăng bài localhost:<b00> </b00> </protocols>
<protocols>	<add name="HttpSoap"/>	<add name="HttpPost"/>	<add name="HttpGet"/> 	<add name="HttpPostLocalhost"/>      <!-- Documentation enables the documentation/test pages -->	<add name="Documentation"/></protocols>
THAM KHẢO
Để biết thêm chi tiết về cấu hình dịch vụ Web, xem các <protocols></protocols> Yếu tố trong các.NET Framework 1.1 tài liệu: http://msdn2.Microsoft.com/en-US/Library/ccbk8w5h (vs.71) .aspx
HTTP POST nhận được không được công nhận

Cảnh báo: Bài viết này được dịch tự động

Thuộc tính

ID Bài viết: 819267 - Xem lại Lần cuối: 12/08/2015 02:36:10 - Bản sửa đổi: 2.0

Microsoft .NET Framework 1.1

  • kbnosurvey kbarchive kberrmsg kbwebclasses kbwebserver kbhttp kbhtml kbinfo kbmt KB819267 KbMtvi
Phản hồi