为登录身份验证创建了一个非常好的Web服务,并使用ajax访问它。 现在我必须将表单数据插入到我的webservice,任何人都可以帮助我..我的表单包含`
issueid, date, status, description
点击提交按钮,它应该使用webservice ..
进入我的数据库我的验证码是:
@Path("/authentication")
public class AuthLogin {
@POST
@Path("/info/{username}/{password}")
@Produces("text/plain")
public String responseMsg(
@PathParam("username") String uname,
@PathParam("password") String pwd ) throws SQLException {
Connection conn = null;
ResultSet rs = null;
String isuservalid = null;
try {
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver");
conn = DriverManager.getConnection("jdbc:sqlserver:my server details);
String query = "checkAMISUser '" + uname + "' , '" + pwd +"'";
PreparedStatement ps = conn.prepareStatement(query);
rs = ps.executeQuery();
if(rs != null && rs.next()) {
isuservalid = rs.getString("STATUS");
}
} catch (Exception err) {
System.out.println("ERROR: " + err);
} finally {
rs.close();
conn.close();
}
Response.ok().header("Access-Control-Allow-Origin", "*").build();
return isuservalid;
}
}
我的ajax电话是:
<script type="text/javascript">
var uname = $("#userid").val();
$(document).on("pagebeforeshow","#projectpage",function() {
uname = $("#userid").val();
var pwd = $("#password").val();
var serviceurl= "http://myhost/Authentication/rest/authentication/info";
$.ajax({
url:serviceurl + '/' +uname +'/' +pwd,
type: 'POST',
dataType: 'text',
success: function(data) {
if(data=='True') {
alert("Web service call succeeded." );
else{
alert("Invalid UserName and Password");
$.mobile.changePage('#loginpage');
}
},
error: function (error) {
alert('ERROR has occurred!');alert(JSON.stringify(error))
}
})
});
</script>
答案 0 :(得分:0)
看看这个:http://docs.oracle.com/javase/tutorial/jdbc/basics/storedprocedures.html#calling_javadb_mysql
并适应微软数据库(由于您的JDBC驱动程序命名空间,我假设您正在使用。请特别注意他们如何使用&#39;?&#39;和变量替换来进行调用,这可以保护来自数据库注入。
如果您尝试并再次卡住,请提供抛出异常和尽可能多的堆栈跟踪(不要泄露专有信息)。