estoy haciendo un servicio web WCF que devolverá un objeto JSON, pero sigo recibiendo un error 400 Bad Request cuando intento hacer una llamada AJAX:400 Solicitud incorrecta cuando se trata de ponerse en contacto con el servicio WCF utilizando XHR
OPTIONS http://localhost:55658/WebServiceWrapper.svc/GetData?_=1318567254842&value=97 HTTP/1.1
Host: localhost:55658
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:7.0.1) Gecko/20100101 Firefox/7.0.1
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
Accept-Language: en-us,en;q=0.5
Accept-Encoding: gzip, deflate
Accept-Charset: ISO-8859-1,utf-8;q=0.7,*;q=0.7
DNT: 1
Connection: keep-alive
Origin: http://localhost:3000
Access-Control-Request-Method: GET
Access-Control-Request-Headers: content-type
HTTP/1.1 400 Bad Request
Server: ASP.NET Development Server/10.0.0.0
Date: Fri, 14 Oct 2011 04:40:55 GMT
X-AspNet-Version: 4.0.30319
Cache-Control: private
Content-Length: 0
Connection: Close
Aquí es mi llamada AJAX:
$.ajax({
contentType: 'application/json',
url: 'http://localhost:55658/WebServiceWrapper.svc/GetData',
dataType: 'json',
data: {
value: 97
},
success: function (data) {
alert('success' + data);
},
error: function(XMLHttpRequest, textStatus, errorThrown) {
alert('failure' + errorThrown);
}
});
Aquí es mi definición de servicio WCF:
public class WebServiceWrapper : IWebServiceWrapper
{
public object GetData(int value)
{
return new
{
ReturnValue = string.Format("You entered: {0}", value)
};
}
}
Y es interfaz:
[ServiceContract]
public interface IWebServiceWrapper
{
[OperationContract]
object GetData(int value);
}
Sé que he resuelto este problema antes, pero no recuerdo lo que había hecho antes. Cualquier ayuda sería muy apreciada ya que el agujero que pongo en la pared es cada vez más grande.
¿Estás seguro del número de puerto que utilizas en la llamada ajax (55658)? El origen se informa como 3000. –