Php Android:HTTPS连接到我的数据库
我曾经用HTTP连接到php for mysql,现在我被要求使用HTTPS,因为它更安全。但我尝试了很多方法,但无法让平板电脑发布或获取任何信息,我制作了一个自签名证书并添加到本地计算机信任区,这样我就不会被问到它是否未被验证我是否要继续,我尝试通过浏览器连接,它工作正常并打印了我需要的所有信息,但不是通过应用程序。我附加了我以前需要更改为HTTPS的HTTP代码。希望获得一些帮助以将此连接更改为HTTPSPhp Android:HTTPS连接到我的数据库,php,android,mysql,ssl,https,Php,Android,Mysql,Ssl,Https,我曾经用HTTP连接到php for mysql,现在我被要求使用HTTPS,因为它更安全。但我尝试了很多方法,但无法让平板电脑发布或获取任何信息,我制作了一个自签名证书并添加到本地计算机信任区,这样我就不会被问到它是否未被验证我是否要继续,我尝试通过浏览器连接,它工作正常并打印了我需要的所有信息,但不是通过应用程序。我附加了我以前需要更改为HTTPS的HTTP代码。希望获得一些帮助以将此连接更改为HTTPS httpclient = new DefaultHttpClient(
httpclient = new DefaultHttpClient();
httppost = new HttpPost ("http://xx.xx.xx.xx/E-MENU/login.php");
username = etUser.getText().toString();
password = etPass.getText().toString();
password = md5(SHA1(password));
try{
nameValuePairs = new ArrayList<NameValuePair>();
nameValuePairs.add(new BasicNameValuePair("username", username));
nameValuePairs.add(new BasicNameValuePair("password", password));
httppost.setEntity(new UrlEncodedFormEntity(nameValuePairs));
response = httpclient.execute(httppost);
if(response.getStatusLine().getStatusCode() == 200){
entity = response.getEntity();
if (entity!= null){
InputStream instream = entity.getContent();
JSONObject jsonResponse = new JSONObject (convertStreamToString(instream));
httpclient=newdefaulthttpclient();
httppost=新的httppost(“http://xx.xx.xx.xx/E-MENU/login.php");
username=etUser.getText().toString();
password=etPass.getText().toString();
密码=md5(SHA1(密码));
试一试{
nameValuePairs=新的ArrayList();
添加(新的BasicNameValuePair(“用户名”,username));
添加(新的BasicNameValuePair(“密码”,password));
setEntity(新的UrlEncodedFormEntity(nameValuePairs));
response=httpclient.execute(httppost);
if(response.getStatusLine().getStatusCode()==200){
entity=response.getEntity();
如果(实体!=null){
InputStream instream=entity.getContent();
JSONObject jsonResponse=新的JSONObject(convertStreamToString(instream));
非常感谢。所以当您使用HTTP而不是HTTPS时,它可以工作?问题将由Android不信任服务器上的自签名证书引起
请参阅此问题的公认答案:实际上,我不确定如何将我的连接“更改我的http连接”转换为HTTPS。不知道HTTPS连接设置的代码