로컬로 게시 한 웹 서비스가 있습니다. 웹 서비스를 테스트 할 HTML 페이지를 작성했습니다. 웹 서비스는 XML이 될 문자열을 기다리고 있습니다. VS 내에서 웹 서비스를 디버깅 할 때 모든 것이 잘 작동합니다. FireBug를 사용하여 내 웹 서비스가 실제로 AJAX 호출에 의해 공격당하는 것을 볼 수 있습니다. IIS에 웹 서비스를 로컬로 배포 한 후 작동하지 않는 것 같습니다..NET 웹 서비스에 jQuery ajax POST를 디버깅하는 방법
이 문제를 해결하는 가장 좋은 방법을 알아야합니다. 내 AJAX JS는 다음과 같습니다 : I는 웹 서비스가 정말 히트되도록 시도 웹 메소드의 반환 문자열을 추가
[WebMethod]
public string SaveSummaryDisplayData(string xml)
{
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.LoadXml(xml);
XmlParser parser = new XmlParser(xmlDocument);
IModel repository = new Repository();
if(repository.AddRecord("TestData",parser.TestValues))
{
return "true";
}
return "false";
}
}
:과 같이
function postSummaryXml(data) {
$.ajax({
type: 'POST',
url: 'http://localhost/collection/services/datacollector.asmx/SaveSummaryDisplayData',
data: { xml: data },
error: function(result) {
alert(result);
},
success: function(result) {
alert(result);
}
});
웹 메소드가 보인다 아약스에서. 문제는 다음과 같습니다.
FF에서는 'Success'함수가 항상 호출되지만 결과는 항상 'NULL'입니다. 그리고 웹 방식은 효과가없는 것으로 나타났습니다 (데이터가 저장되지 않았습니다).
IE에서 '오류'기능이 호출되었으며 응답은 서버 오류 : 500입니다. IE가 내게 뭔가 잘못되었다는 정확한 표시를 제공한다고 생각하지만 문제가 무엇인지 파악할 수 없습니다. .
누군가 특정 서버 오류 메시지를 어떻게 표시해야하는지 제안 해주십시오. 도와 주셔서 감사합니다!
페이지 메서드에 중단 점 설정을 시도 했습니까? 디버거를 w3wp.exe에 연결하기 만하면됩니다 (목록에있는 프로세스를 보려면 "모든 사용자의 프로세스 표시"를 선택해야합니다) 디버깅 할 수 있어야합니다.이 메서드가 호출되는 경우에도 알려줍니다 . –