Cập nhật cấu hình của bạn trông giống như:
<configuration>
<system.web>
<compilation debug="true" targetframework="4.0">
<authentication mode="None">
</authentication></compilation></system.web>
<system.webserver>
<modules runallmanagedmodulesforallrequests="true">
</modules></system.webserver>
<system.servicemodel>
<servicehostingenvironment **aspnetcompatibilityenabled**="true">
<standardendpoints>
<webscriptendpoint>
<standardendpoint **crossdomainscriptaccessenabled**="true" name="">
</standardendpoint></webscriptendpoint>
</standardendpoints>
</servicehostingenvironment></system.servicemodel>
</configuration>
See here for a blog post cung cấp một hướng của việc tạo ra một dịch vụ WCF mà có thể truy cập cross-domain.
Điều này sẽ cho phép dịch vụ của bạn chấp nhận yêu cầu từ các nguồn đa miền.
Về việc xác định liệu để pad phản ứng của bạn (p trong jsonp),
Nhờ @carlosfigueira cho việc này:
Nếu sử dụng Net 4 JSONP được hỗ trợ natively. Miễn là yêu cầu có tham số chuỗi truy vấn được gọi là "callback" (tên này có thể được định cấu hình), phản hồi sẽ được đệm bằng tên hàm .
Nếu không, bạn sẽ cần phải viết trình kiểm tra tin nhắn tùy chỉnh để đánh dấu phản hồi phù hợp.
Nguồn
2011-11-21 22:49:32
Bạn không cần phải viết một thanh tra tùy chỉnh - trong .NET 4.0 JSONP được hỗ trợ natively. Miễn là yêu cầu có tham số chuỗi truy vấn được gọi là "callback" (tên này có thể được định cấu hình), phản hồi sẽ được đệm bằng tên hàm (cho rằng crossDomainScriptAccessEnabled được đặt thành true, như bạn đã đề cập) – carlosfigueira
@carlosfigueira Cảm ơn rất nhiều điều này nugget thông tin, cuối cùng của tôi đột nhập vào thế giới của jsonp và WCF được in .Net 3.5. Trả lời ngay bây giờ đã được cập nhật. Blog tuyệt vời bằng cách này! –