-1

特定の APIKey パラメーターを使用して保護されているサードパーティのパブリック REST API Web サービスにアクセスするための Java クラスを作成しています。

json 出力をファイルにローカルに保存するときに、JsonNode API を使用して、必要な Json 配列にアクセスできます。

例えば

JsonNode root = mapper.readTree(new File("/home/op/Test/jsondata/loans.json"));

しかし、JsonNode で保護されたライブ Web URL を使用しようとすると、

例えば

JsonNode root = mapper.readTree(url);

私は得ています:

com.fasterxml.jackson.core.JsonParseException: Unexpected character ('<' (code 60))

これは、タイプの不一致があることを示唆しています。しかし、接続の問題である可能性が高いと思います。

REST サービスへの接続を処理しています。

private static String surl = "https://api.rest.service.com/xxxx/v1/users/xxxxx/loans?apikey=xxxx"
public static void main(String[] args) {

    try {

        URL url = new URL(surl);
        JsonNode root = mapper.readTree(url);
        ....
     }

私も使用しようとしました:

URL url = new URL(surl);
HttpURLConnection httpcon = (HttpURLConnection) url.openConnection();       
InputStream isr = httpcon.getInputStream();
JsonNode root = mapper.readTree(isr);

同じ結果で。

APIKey を削除すると、ステータス 400 エラーが発生します。したがって、APIKey パラメータを処理してはいけないと思います。

JsonNode を使用して保護された REST サービス URL への呼び出しを処理する方法はありますか? 大きな配列内の複数のオブジェクトをトラバースするキーと値のペアを 2 つだけ抽出しているので、JsonNode API を引き続き使用したいと思います。

4

1 に答える 1