Estoy intentando crear un cliente WCF que acceda a una API REST. La API requiere que se use un GET para una determinada llamada, por lo que estoy usando el atributo [WebGet] para el método. Sin embargo, cuando llamo al método, la llamada real que se produce es una POST (vista mediante Fiddler). Mi contrato es la siguiente:
Método WCF enviando POST en lugar de GET
[OperationContract]
[WebGet(UriTemplate = "/statuses/public_timeline.json",
BodyStyle = WebMessageBodyStyle.Bare, RequestFormat = WebMessageFormat.Json,
ResponseFormat = WebMessageFormat.Json)]
List<Status> PublicTimeline();
También he intentado usar [WebInvoke] con un método de conseguir, pero sin éxito.
Fuera de interés, han intentado utilizar un navegador para realizar la obtenemos? –
Sí. Además, cuando uso POST, la respuesta que recibo del servidor es un error 400 con algún texto que indica que debería estar usando GET en lugar de POST. –
La respuesta que obtengo del servidor cuando uso WCF es {"request": "/ statuses/public_timeline.json", "error": "Este método requiere un GET".} –