POST Request HTTP

Diskussion i 'Frågor, support och diskussion' startad av stolle95, 18 sept 2015.

  1. stolle95

    stolle95 Infant Droid Medlem

    Blev medlem:
    18 sept 2015
    Inlägg:
    2
    Mottagna gillanden:
    0
    Hej, jag har sökt och sökt men hittar verkligen ingenting. Jag vill veta hur man kan få en connection med mysql databas och sedan skicka en en post req för att sedan skicka en en query. Alla guider jag hittar verkar vara utdaterade då man måste inkludera http och det verkar som jag förstått att android har tagit bort den biten i den nya versionen. Läst någonstans om "asynctask" men som sagt där finns det också bara gamla tuts.
    Jag har en ready .php fil som tar in POST o returnar en json.
    Någon vet en fräsh uppdaterad guide?

    //Stolle
     
  2. e7andy

    e7andy Professional Droid Hedersmedlem

    Blev medlem:
    14 okt 2009
    Inlägg:
    2 350
    Mottagna gillanden:
    833
    Telefon:
    Huawei P10 Plus

    MINA ENHETER

    Telefon:
    Huawei P10 Plus
    Telefon 2:
    Nexus 5
    Telefon 3:
    ADP1
    Övrigt:
    LG G Watch R, ChromeCast
  3. srr66

    srr66 Infant Droid Medlem

    Blev medlem:
    29 sept 2015
    Inlägg:
    1
    Mottagna gillanden:
    1
    e7andy gillar detta.
  4. Ljudvallen

    Ljudvallen Infant Droid Medlem

    Blev medlem:
    24 nov 2015
    Inlägg:
    2
    Mottagna gillanden:
    0

    MINA ENHETER

    Jag använder mig utav bl.a. följande kod

    I en AsyncTask

    -------

    HttpsURLConnection conn = (HttpsURLConnection) url.openConnection();
    conn.setReadTimeout(15000);
    conn.setConnectTimeout(15000);
    conn.setRequestMethod("POST");
    conn.setDoInput(true);
    conn.setDoOutput(true);

    OutputStream os = conn.getOutputStream();
    BufferedWriter writer = new BufferedWriter(
    new OutputStreamWriter(os, "UTF-8"));
    writer.write(getPostData(postDataParams));

    writer.flush();
    writer.close();
    os.close();
    int responseCode=conn.getResponseCode();

    ---------

    getPostData är en funktion för att kovertera
    postDataParams som i sig är en HashMap med parametrarnas namn och värden

    funktionen getPostData gör följande för att sätta ihop POST strängen som returneras av funktionen

    -------
    StringBuilder result = new StringBuilder();
    boolean first = true;
    for(Map.Entry<String, String> entry : params.entrySet()){
    if (first)
    first = false;
    else
    result.append("&");

    result.append(URLEncoder.encode(entry.getKey(), "UTF-8"));
    result.append("=");
    result.append(URLEncoder.encode(entry.getValue(), "UTF-8"));
    }

    -------

    Detta är inte ut-daterat så det fungerar i nytt.
    Jag använder javax.net.ssl.HttpsURLConnection
    går också att använda java.net.HttpURLConnection som inte är att föredra men har man inte har cert på servern så.
     
    Last edited: 24 nov 2015
  5. Zooklubba

    Zooklubba Android Medlem

    Blev medlem:
    10 jul 2010
    Inlägg:
    6 394
    Mottagna gillanden:
    2 134

    MINA ENHETER

    Vill du uttöka vad som är så dåligt med Volley? Du kan ju bland annat köra Volley med OkHttp. Asynkron bildhämtning (i t.ex list/recyclerviews) blir ju galet enkelt med Volley och NetworkImageView samtidigt som anropet dödas om vyn inte syns.