私はこのようにしました。君たちありがとう!ここでは、それは私のためにどのように機能するかを説明するためにいくつかのコードスニペットは、次のとおりです。ここ
// forming state query parameter
Map<String, String> stateMap = new HashMap<String, String>();
stateMap.put("1", "111");
stateMap.put("2", "222");
stateMap.put("3", "333");
JSONObject jsonObject = new JSONObject(stateMap);
String stateJSON = jsonObject.toString();
System.out.println("stateJSON: " + stateJSON);
String stateQueryParam = Base64.encodeBase64String(stateJSON.getBytes());
System.out.println("stateQueryParam: " + stateQueryParam);
// getting map from state query param
ObjectMapper objectMapper = new ObjectMapper();
stateMap = objectMapper.readValue(Base64.decodeBase64(stateQueryParam.getBytes()), LinkedHashMap.class);
System.out.println("stateMap: " + stateMap);
が出力されます。
stateJSON: {"1":"111","2":"222","3":"333"}
stateQueryParam: eyIxIjoiMTExIiwiMiI6IjIyMiIsIjMiOiIzMzMifQ==
stateMap: {1=111, 2=222, 3=333}
あなたはJSONでそれをコード化して、Base64でを使用してJSON文字列を符号化することを検討してください。これは、ほとんどの人があなたのパラメータで猿をするのを防ぎ、OAuthなどを通過するときに非常に弾力性があります。 – Jamie
ありがとう、@ジェイミー、私はこのようにしました。 –