知道为什么这个请求在curl 中有效而不是在java 中吗?

我正在尝试将 woocommerce APi 与 java 一起使用,但它返回 403。当我通过curl 尝试相同的请求时,它工作正常。


已尝试添加/删除请求属性


Java类:


public static void main (String [] args){

    String CONSUMER_KEY="consumer_key";

    String CONSUMER_SECRET="consumer_secret";

    String authString = CONSUMER_KEY + ":" + CONSUMER_SECRET;

    byte[] authEncBytes = Base64.encodeBase64(authString.getBytes());

    String authStringEnc = new String(authEncBytes);

    HttpURLConnection conn;

    try {

        String url ="https://example.com/wp-json/wc/v3/products";

        URL url1 = new URL(url);

        conn = (HttpURLConnection) url1.openConnection();

        conn.setRequestMethod("GET");

        conn.setRequestProperty("Authorization","Basic "+authStringEnc);

        conn.setRequestProperty("header","content-type:application/json");

        conn.setRequestProperty("Accept", "*/*");

        conn.setDoOutput(true);

        conn.setDoInput(true);

        conn.setInstanceFollowRedirects(false);

        InputStream is = conn.getInputStream();

        byte[] bytes = IOUtils.toByteArray(is);

        String response= GzipUtil.unzip(bytes);

    }

    catch (Exception e){


    }


}

卷曲请求:


卷曲https://example.com/wp-json/wc/v3/products \ -u {consumer_key}:{consumer_secret}


知道如何解决这个问题吗?谢谢


素胚勾勒不出你
浏览 118回答 1
1回答

肥皂起泡泡

某些服务器期望请求中存在 User-Agent 标头,以将其视为有效请求。那么您可以尝试将其添加到您的请求中吗?conn.setRequestProperty("User-Agent", "My-User-Agent");
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Java