2013-05-17 2 views
-1

이미 알고 있습니다. 나는 여기서 위기에 처해있다.REST PUT에 메소드가 허용되지 않습니다.

PUT 방법을 사용할 수 없습니다. 그냥 REST 서비스. iis 7 windows 7 64 비트.

나는 하나의 힌트가 아니라 Method가 허용되지 않습니다. .svc 파일을 사용하고 있습니다.

도와주세요! 감사합니다

+0

정확하게 오류 메시지는 무엇입니까? 어떤 코드를 실행하려고합니까? –

답변

0

나는 downvoted되었습니다,하지만 주위를 확인하는 경우, 많은 사람들이 이것으로 고생했습니다.

그래서, 일이 내가 배운 :

  • 추적 실패 요청을 ENABLE! 나는 일사병에 걸렸다. 나는 하루 종일 밤을 구할 수있었습니다. 기술적 인 문제에 집착하는 사람 이었기 때문입니다.
  • PUT 방법은 브라우저에서 URL을 통해 테스트 할 수 없습니다 !!!!

마지막으로 Failed Trace 덕분에 WebDAV를 제거하여 해결했습니다. 나는 이미 그 방법을 시도해 봤지만 때때로 크롬 레스트 익스텐션을 사용하고 때로는 브라우저의 URL을 통해 확인하기도했습니다. 분명히 WebDAV 제거를 시도해 보았을 때, Chrome Rest로 확인한 적이 없었습니다. 알다시피, 알다시피, 나는 어제까지 완전한 초보자였습니다. 이제 나는 초보자입니다.

서비스를 완전히 제어 할 수 있도록 코드를 작성했습니다.

같은 문제가 발생하는 경우 추적 요청을 사용하지 않도록 설정하십시오. 당신이 그것을 일으키는 놈을 발견 할에 가까운

405

: 그런 다음 XML 출력에,을 찾습니다. 제 경우에는 webDAV였습니다. Rememeber는 나머지 Chrome 확장 프로그램이나 자신의 앱과 같은 실제 PUT 동사를 실제로 전송하는 도구를 사용합니다. 웹 브라우저의 URL이 아닙니다.

감사합니다.

2

이런 일이 일어나는 데에는 여러 가지 이유가있을 수 있습니다. 귀하의 web.config (막 닫기 전에)를 아래에 추가하여 WCF 웹 서비스에 대한 진단 정보를 얻을 것을 권장합니다. 하고있다 : 또한

<system.diagnostics> 
<sources> 
    <source name="System.ServiceModel" 
      switchValue="Information, ActivityTracing" 
      propagateActivity="true"> 
    <listeners> 
     <add name="traceListener" 
      type="System.Diagnostics.XmlWriterTraceListener" 
      initializeData= "c:\temp\webservicelog.svclog" /> 
    </listeners> 
    </source> 
</sources> 

, 당신은 다음과 같은 방법 작업 계약에 PUT을 배치하는 :

[OperationContract] 
[WebInvoke(Method = "PUT", RequestFormat = WebMessageFormat.Json, ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.Bare, UriTemplate = "DoWork")] 
+0

문제가 있습니다. 많은 이유! –

관련 문제