0

HTTPgetを使用してこれをAndroidコードに変換する適切な方法は何ですか。

基本的に私はウェブサイトにログインして特定の検索を行う必要があります...

これは私が問題を抱えている実際のコードです:

curl -H "Content-type: application/json" --basic --user "username:passowrd" -X GET -G \
--data-urlencode "status=triggered" \
--data-urlencode "assigned_to_user="\
"https://yourdomain.pagerduty.com/api/v1/incidents"

putを使ってそれができるかどうかわかりません。

例:

object.put("--data-urlencode", status=triggered)

また、ユーザー名とパスワードについても、このようなことができるかどうかはわかりません

object.put("username", "romel");
object.put("password", "passwd");
4

2 に答える 2

1

HTTP 基本認証に問題がある場合は、このコードを試してユーザー名とパスワードを設定してください...

HttpURLConnection con;
String basicAuthUsername = "username";
String basicAuthPassword = "passowrd"; //do you have a typo here??
try {
    URL url = new URL(urlString);  
    con = (HttpURLConnection)url.openConnection();

    if (basicAuthUsername != null && basicAuthPassword != null) {
        String userAndPass = new StringBuilder(basicAuthUsername).append(":").append(basicAuthPassword).toString();
        con.setRequestProperty("Authorization", "Basic " + Base64.encodeToString(userAndPass.getBytes(), Base64.NO_WRAP));
    }

    //con.setRequestMethod("POST");
    con.setRequestMethod("GET");

    con.setUseCaches(false);

    int responseCode = con.getResponseCode();

    //etc...
}
finally {
        //close con, etc.
}

...また、パスワードを間違って入力した可能性がありますか??

于 2014-05-12T16:52:49.837 に答える
0

あなたの質問はあまり詳細ではないので、あなたが探しているものを完全に確信しています.それは認証の問題ですか、それとも一般的なJSONですか?

Android での JSON の処理については、 Vogella のチュートリアルなど、いくつかの場所で十分に説明されています。

Vogella の例のように、JSON の記述は非常に簡単です。

public void writeJSON() { 

 JSONObject object = new JSONObject();
 try {
    object.put("name", "Jack Hack");
    object.put("score", new Integer(200));
    object.put("current", new Double(152.32));
    object.put("nickname", "Hacker");
  } catch (JSONException e) {
    e.printStackTrace();
  }
  System.out.println(object);
} 

コンテンツ タイプなどのヘッダーは、HTTPGet オブジェクトにも簡単に追加できます。次に例を示します。

HttpGet httpGet = new HttpGet(API_URL);
        httpGet.setHeader("Accept", "application/json");
        httpGet.setHeader("Content-type", "application/json");

これらは単なるスニペットです。より適切で完全な説明については、上記のリンク先のチュートリアルを使用してください。お役に立てれば。

于 2012-12-13T16:58:35.187 に答える