Phonegap 안드로이드 앱 개발에 초보자입니다. 원격 MS SQL Server 데이터베이스와 내 응용 프로그램을 연결하려고하는데 ASP.Net 웹 서비스도이 둘을 연결하기 위해 작성했습니다. 그러나이 웹 서비스를 JQuery ajax() 메서드를 통해 호출하면 "내부 서버 오류"가 반환됩니다.Phonegap Ajax 호출은 내부 서버 오류를 반환합니다.
코드 :
<html>
<head>
<title>PhoneGap Example</title>
<script type="text/javascript" charset="utf-8" src="js/cordova.js"></script>
<link rel="stylesheet" href="css/jquery.mobile.css" />
<script type="text/javascript" src="js/jquery.js"></script>
<script type="text/javascript" src="js/jquery.mobile.js"></script>
<script type="text/javascript" >
function button_clicked(){
var name = $.trim($("#txtName").val());
var contact = $.trim($("#txtContactNumber").val());
var type = $.trim($("#txtType").val());
if(name.length > 0)
{
$.ajax({
type: "POST",
url: "http://my-domain.com/DocNote_WebService/DoctorMaster.asmx/insertDoctor",
data: "{doctorName: "+ name + ",contactNumber: "+ contact + ",doctorType: " + type +"}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success : function(data) {
alert('Record Saved Sucessfully.....!!!!');
},
error: function(xhr, ajaxOptions, thrownError) {
alert('ERROR: '+thrownError);
}
});
}
}
</script>
</head>
<body>
<section id="page1">
<header><h1>DocNote</h1></header>
<div class="content" data-role="content">
<h3>Enter Doctor Info</h3>
<div data-role="fieldcontain">
<input type="text" data-clear-btn="true" name="txtName" id="txtName" placeholder="Enter Name"/>
<br/>
<input type="text" data-clear-btn="true" name="txtContactNumber" id="txtContactNumber" placeholder="Contact Number"/>
<br/>
<input type="text" data-clear-btn="true" name="txtType" id="txtType" placeholder="Type"/>
<br/>
<button id="btnSubmit" class="ui-btn ui-btn-inline ui-corner-all" onclick="button_clicked()">Submit</button>
<button id="btnCancel" class="ui-btn ui-btn-inline ui-corner-all">Cancel</button>
</div>
</div>
</section>
</body>
</html>
내 웹 서비스 방법 :
[WebMethod]
public void insertDoctor(String doctorName, String contactNumber, int doctorType) {
using (SqlConnection connection = ConnectionFactory.getConnection())
{
SqlCommand sqlCommand = new SqlCommand("Insert into DOCTOR_MASTER (DOCTOR_NAME, DOCTOR_CONTACT_NUMBER,DOCTOR_TYPE) values (@name,@contact,@type)",connection);
sqlCommand.Parameters.AddWithValue("@name", doctorName);
sqlCommand.Parameters.AddWithValue("@contact",contactNumber);
sqlCommand.Parameters.AddWithValue("@type", doctorType);
sqlCommand.ExecuteNonQuery();
}
}
내가 사전에 잘못 ..... 감사를하고있는 중이 야 무엇을 말해 ...... ...
서버의 코드를 디버깅하여 오류의 원인을 확인 했습니까? 그것 없이는, "내부 서버 오류"전혀 도움이되지 않습니다. – Archer
서버 측에서 request.form [ "keyword"]로 게시 된 데이터를 가져 와서 다음과 같이 데이터를 게시하십시오. 데이터 : {이름 : 이름, 연락처 : 연락처, 유형 : 유형} – Emre
@Archer : [Testing Tool] (https://wizdl.codeplex.com/)을 사용하는 서비스. 정상적으로 작동합니다. –