我正在为一个网站开发一个Android应用程序,我在它里面做了一个功能,用户可以在应用程序中发送数据到网站数据库.我使用PHP Web服务和Android代码中的URL连接到Web服务. 我怎样才能保证我的应用程序(和php web服务)的安全,不会有人通过调试apk找不到web服务url,并将大量数据发送到站点并使站点宕机.
任何让软件系统免受这类危险的提示都会对我有很大的帮助,谢谢.
编辑: 例如,现在我使用AsyncTask将edittext中的数据发送到WebService,如下所示. 我在oncreate中使用此代码将数据发送到名为AskServer()的AsyncTask类:
link = "http://mywebservice-adrress/name.php";
new AskServer().execute(link, edttext.getText().toString());
下面是我的AsyncTask类的doInBackground:
@Override
protected Object doInBackground(String... params) {
BufferedReader buf = null;
try {
URL link = new URL(params[0]);
URLConnection connect = link.openConnection();
connect.setDoOutput(true);
OutputStreamWriter osw = new OutputStreamWriter(connect.getOutputStream());
String data = URLEncoder.encode("field","UTF8") +"="+ URLEncoder.encode(params[1], "UTF8");
sw.write(data);
osw.flush();
} catch (Exception e) {e.printStackTrace();}
return null;
}// end doInbackground()
以下是我的web服务中的php代码:
<?php
include 'config.php';
$field=$_POST['field'];
mysql_query("insert into `wp_comments` (`comment_content`)
values('$field')");
?>
这是一个例子,我的真实代码向服务器发送了更多的数据,也许上面的代码不起作用,我只是想让我的问题更准确、更具体.