Tôi có máy chủ signalr 2.0 sẽ phân phối nhiều miền .. Vì vậy, cần bật CORS trong máy chủ của tôi. Tôi sử dụng iis7.5 làm máy chủ web. tôi kích hoạt CORS trong Startup
phương pháp dự án của tôi như sauTên miền chéo không hoạt động với signalr 2.0
public void Configuration(IAppBuilder app)
{
app.Map("/signalr", map =>
{
// Setup the CORS middleware to run before SignalR.
// By default this will allow all origins. You can
// configure the set of origins and/or http verbs by
// providing a cors options with a different policy.
map.UseCors(CorsOptions.AllowAll);
var hubConfiguration = new HubConfiguration
{
// You can enable JSONP by uncommenting line below.
// JSONP requests are insecure but some older browsers (and some
// versions of IE) require JSONP to work cross domain
// EnableJSONP = true
};
// Run the SignalR pipeline. We're not using MapSignalR
// since this branch already runs under the "/signalr"
// path.
map.RunSignalR(hubConfiguration);
}
}
Mã này là sao chép và dán từ bài viết này http://www.asp.net/signalr/overview/signalr-20/hubs-api/hubs-api-guide-javascript-client
Tôi tạo ra một dự án localhost và cố gắng kết nối với máy chủ signalr.
Nhưng tôi nhận được lỗi sau đây trong firefox
Cross-Origin Yêu cầu Bị chặn: The Origin Policy Same không cho phép đọc các tài nguyên từ xa tại http://MyWebSite.com:8082/signalr/negotiate?connectionData=%5B%7B%22name%22%3A%22sahragostarhub%22%7D%5D&clientProtocol=1.3&_=1405622027746
này có thể được cố định bằng cách di chuyển các nguồn lực để cùng một tên miền hoặc cho phép CORS . thương lượng
và lỗi này trong chrome XMLHttpRequest không thể tải http://MyWebSite.com:8082/signalr/negotiate?connectionData=%5B%7B%22name%22%3A%22sahragostarhub%22%7D%5D&clientProtocol=1.3&_=1405622032883
. Không có tiêu đề 'Access-Control-Allow-Origin' xuất hiện trên tài nguyên được yêu cầu. Xuất xứ '(Khách hàng của tôi địa chỉ trang web) do đó không được phép truy cập
tôi Ngoài ra thêm các dòng sau vào web.config của tôi
<httpProtocol>
<customHeaders>
<clear />
<add name="Access-Control-Allow-Origin" value="*" />
</customHeaders>
</httpProtocol>
Sự thay đổi này cũng là vô ích.
Không chắc chắn nếu điều này sẽ giúp bạn nhưng trong ứng dụng góc sử dụng "*" không hoạt động, chúng tôi phải chỉ định miền chính xác. – epitka
Tất cả những gì chúng tôi biết là các tiêu đề không được đặt chính xác. Bạn có thể thêm tiêu đề vào câu hỏi của mình không? –
Tôi khuyên bạn nên sử dụng trình điều khiển để kiểm tra tiêu đề mà máy chủ của bạn thực sự đang gửi; mà không có điều đó, đó là tất cả các phỏng đoán –