1

Я хочу войти в свой Blackberryapp, но это приложение все еще в методе GET, я хочу изменить это приложение в метод POST. Потому что мой сервер использует метод POST. Это мой исходный код в моем приложении BB.Как сделать метод POST в Blackberry

package com.blackberry.mobile_banking; 

import java.io.InputStream; 
import java.io.InputStreamReader; 

import javax.microedition.io.Connector; 
import javax.microedition.io.HttpConnection; 

import net.rim.blackberry.api.browser.URLEncodedPostData; 
import net.rim.device.api.ui.UiApplication; 
import net.rim.device.api.ui.component.Dialog; 

public class Check_Login { 

    HttpConnection httpconnection; 
    InputStream inputstream; 

    public Check_Login() 
    { 
    } 
    public void validasi_Login(String username, String password) 
    { 
     try { 
      URLEncodedPostData params=new URLEncodedPostData(URLEncodedPostData.DEFAULT_CHARSET, true); 
      params.append("username", username); 
      params.append("password", password); 
      String url="http://127.0.0.1:80/proyek_akhir/cek_login.php?"+params.toString()+";deviceside=true"; 
      System.out.println(url); 

      //connect to server 

      httpconnection=(HttpConnection)Connector.open(url); 
      inputstream=httpconnection.openDataInputStream(); 

      if(httpconnection.getResponseCode()==HttpConnection.HTTP_OK) 
      { 
       InputStreamReader reader=new InputStreamReader(inputstream, "UTF-8"); 
       int readCharacter; 
       StringBuffer responseBuffer=new StringBuffer(); 

       while((readCharacter=reader.read())!=-1) 
       { 
        responseBuffer.append((char)readCharacter); 

       } 
       if(responseBuffer.toString().equalsIgnoreCase("SUCCESS")) 
       { 
        Screen_Home sc_home=new Screen_Home(); 
        UiApplication.getUiApplication().pushScreen(sc_home); 
       } 
       else if(responseBuffer.toString().equalsIgnoreCase("FAILED")) 
       { 
        Dialog.alert("Username or Password wrong"); 

       } 
      } 

     } catch (Exception e) { 

     } 

    } 

} 

и это мой исходный код в моем сервере

<?php 
    require('db.php'); 
    $username=$_POST['username']; 
    $password=md5($_POST['password']); 
    $query="select*from user where username='$username' and password='$password'"; 
    $hasil=mysql_query($query); 
    if(mysql_num_rows($hasil)>0) 
    { 
     echo "SUCCESS"; 
    } 
    else 
    { 
     echo "FAILED"; 
    } 
?> 
+0

возможно дубликат [HTTP POST в BlackBerry] (http://stackoverflow.com/questions/6184223/ HTTP-пост-в-ежевика). также, тот же комментарий, что и в вашем последнем вопросе ... вы выполняете сетевые запросы в потоке пользовательского интерфейса, что является плохой идеей. – Nate

+0

@Irwan Harianto L Попробуйте этот: http://stackoverflow.com/questions/8969666/http-post-blackberry-null-response/8981963#8981963 – alishaik786

ответ

0

попробовать это -

httpconnection=(HttpConnection)Connector.open(url); 
httpconnection.setRequestMethod(HttpConnection.POST);//this will use post method 
1

Если ваше приложение не было MIDlet, или наследство, предварительно 5,0 приложение, я бы используйте новый класс ConnectionFactory, чтобы избежать проблем с типами транспорта (BES, BIS, Wi-Fi и т. д.). Еще в старые времена мы должны были добавить другой суффикс для каждого типа транспорта в URL. Вы можете избежать, что создание нового завода, который можно настроить один раз и повторно использовать в других частях коды:

 ConnectionFactory factory = new ConnectionFactory(); 
     factory.setPreferredTransportTypes(<array of TransportInfo.TRANSPORT_XXX >); 
     factory.setTransportTypeOptions(<options>); //Only required for BIS 
     ... 

Тогда каждый раз, когда вам нужно соединение, вы получите объект HttpConnection, как это:

 ConnectionDescriptor cd = factory.getConnection(<url>); 
     HttpConnection httpConn = (HttpConnection) cd.getConnection(); 
     httpConn.setRequestMethod(HttpConnection.POST); 
     //Now proceed as normal 

Способ запроса, который вы видите, настраивается в каждом новом экземпляре HttpConnection и не имеет ничего общего с заводом-изготовителем.

 Смежные вопросы

  • Нет связанных вопросов^_^