El formato de solicitud no se reconoce para la URL que termina inesperadamente en '/$metadata'

Pensé en tratar de ver si alguien había visto esto o algo similar, ya que no estoy seguro de por dónde empezar a buscar. Tengo un montón de servicios web que han funcionado bien durante mucho tiempo, pero ahora mi encargado del servidor dijo que dieron un error que nunca antes había visto. ¿Alguna idea/cosas para mirar?

Log Name:      Application
Source:        ASP.NET 4.0.30319.0
Date:          6/12/2012 6:57:03 AM
Event ID:      1309
Task Category: Web Event
Level:         Warning
Keywords:      Classic
User:          N/A
Computer:      Server
Description:
Event code: 3005 
Event message: An unhandled exception has occurred. 
Event time: 6/12/2012 6:57:03 AM 
Event time (UTC): 6/12/2012 1:57:03 PM 
Event ID: 691c9c8fabeb4701aa31488d6db060ce 
Event sequence: 123578 
Event occurrence: 1 
Event detail code: 0 

Application information: 
Application domain: domain
Trust level: Full 
Application Virtual Path: / 
Application Path: D:\Sites\webroot\ 
Machine name: Server

Process information: 
Process ID: 2456 
Process name: w3wp.exe 
Account name: IIS APPPOOL\AppPool_AID1651 

Exception information: 
Exception type: InvalidOperationException 
Exception message: Request format is unrecognized for URL unexpectedly ending in '/$metadata'.
at System.Web.Services.Protocols.WebServiceHandlerFactory.CoreGetHandler(Type type, HttpContext context, HttpRequest request, HttpResponse response)
at System.Web.Services.Protocols.WebServiceHandlerFactory.GetHandler(HttpContext context, String verb, String url, String filePath)
at System.Web.Script.Services.ScriptHandlerFactory.GetHandler(HttpContext context, String requestType, String url, String pathTranslated)
at System.Web.HttpApplication.MaterializeHandlerExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute()
at System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously)

¡Gracias!

preguntado el 12 de junio de 12 a las 21:06

2 Respuestas

Todo lo que necesita es agregar lo siguiente a su web.config

<configuration>
  <system.web>
    <webServices>
      <protocols>
        <add name="HttpGet"/>
        <add name="HttpPost"/>
      </protocols>
    </webServices>
  </system.web>
</configuration>

Respondido 22 Abr '20, 19:04

Mi servicio web también registra Event Code 3005. Estoy llamando a mi servicio web usando JQuery $.ajax(), que produce dos solicitudes http. La primera solicitud es una solicitud de "OPCIONES", y se cumple con una 500 Internal Server Error mensaje. Este es el que se está registrando con Event Code 3005. La segunda solicitud es una solicitud "POST", que se encuentra con la respuesta correcta del servicio web.

No he tenido éxito en mis intentos de evitar que las solicitudes de "OPCIONES" se registren como errores, pero espero que esta información le sea útil de todos modos.

Mi registro de errores también coincide con el tuyo con esta frase:

Mensaje de excepción: el formato de solicitud no se reconoce para la URL que termina inesperadamente en...

Respondido 06 Oct 12, 16:10

Esto realmente no responde a la pregunta en absoluto. - nick udell

No es la respuesta que estás buscando? Examinar otras preguntas etiquetadas or haz tu propia pregunta.