servicestack cors

servicestack - Opciones de la estación de servicio 404 y origen de Cors



(0)

Estoy haciendo una solicitud de cors de mi

cliente: http://mypcname.companyname

al estante de servicios

servidor: http://mypcname.companyname:83/customersInformation

Esa es la solicitud con la biblioteca javascript superagent:

superagent.get(requestUrl) .set(''Authorization'', "basictoken " + getToken()) .set(''Accept'', ''application/json'') .end(function (response) { });

¡Esta solicitud de obtención funciona totalmente bien con la API web ! Entonces, el problema no puede ser del lado del cliente, en mi opinión.

Esa es mi configuración de la pila de servicios:

Plugins.Add(new CorsFeature(allowedOrigins: Settings.Default.SmartAllowedCorsOrigin, allowCredentials: true, allowedHeaders: "Content-Type, Authorization")); RequestFilters.Add((httpReq, httpRes, requestDto) => { if (httpReq.HttpMethod == "OPTIONS") { httpRes.End(); } });

Así es como configuré la clase con los clientesInformación de datos:

[Route(RouteTemplate,"GET, OPTIONS",...)]

Como utilizo el filtro de solicitud de opciones de arriba, el error de la opción 404 se ha ido pero ahora tengo algo aún peor ...

OPTIONS http://mypcname.companyname:83/customersInformation Origin http://mypcname.companyname is not allowed by Access-Control-Allow-Origin.

¿Qué tengo que hacer en el lado del servidor para que finalmente funcionen los cors?

ACTUALIZAR

Como respuesta a la pregunta de mythz obtener los datos del encabezado respone:

Estos son los datos sin procesar que recibo como respuesta del servidor usando los valores predeterminados en el complemento cors: (pestaña raw de fiddler)

HTTP/1.1 200 OK Server: Microsoft-HTTPAPI/2.0 Date: Tue, 29 Oct 2013 10:04:48 GMT Content-Length: 0

error en google chrome:

OPTIONS http://mypcname.companyname:83/customersInformation Origin http://mypcname.companyname is not allowed by Access-Control-Allow-Origin.

El método Get que debería llamarse después de las opciones (al menos mi expectativa) nunca se golpea probablemente debido al error de originación de cors y porque ni siquiera se permiten las OPCIONES que suceden antes.

ACTUALIZACIÓN 2

Solicitud al servidor:

OPTIONS http://mypcname.companyname:83/customersInformation HTTP/1.1 Host: mypcname.companyname:83 Connection: keep-alive Cache-Control: no-cache Pragma: no-cache Access-Control-Request-Method: GET Origin: http://mypcname.companyname User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36 Access-Control-Request-Headers: accept, authorization, x-requested-with Accept: */* Referer: http://mypcname.companyname/ Accept-Encoding: gzip,deflate,sdch Accept-Language: de-DE,de;q=0.8,en-US;q=0.6,en;q=0.4