Java Netsuite Restlets OAuth01

问题描述

我正在尝试使用 Oauth01 连接到 Netsuite Restlest。 当我使用 POSTMAN 时,它工作正常,即使我从邮递员那里复制授权标头 到java它也工作。 当我从 java 生成 Authorization 标头时,响应是:

{ “错误”: { "code": "INVALID_LOGIN_ATTEMPT","message": "无效的登录尝试。" } }

我已经试过了:https://stackoverflow.com/a/60059112/3156875 答案..

这是我的代码

    OAuthHmacSigner signer = new OAuthHmacSigner();
    signer.clientSharedSecret = consumer_secret;
    signer.tokenSharedSecret = access_secret;
    
    

    GenericUrl genericUrl = new GenericUrl(url);
    
    OAuthParameters oauthParameters = new OAuthParameters();
    oauthParameters.consumerKey = consumer_key;
    oauthParameters.token = access_token;
    oauthParameters.signer = signer;
    oauthParameters.version = "1.0";
    oauthParameters.computeNonce();
    oauthParameters.computeTimestamp();
    oauthParameters.realm = "4527192_SB2";
    oauthParameters.computeSignature("GET",genericUrl);
    
    
    
    String authHeader = oauthParameters.getAuthorizationHeader();
    System.out.println("Auth header:"+authHeader);

        

    URL obj = new URL(url);
    HttpURLConnection con = (HttpURLConnection) obj.openConnection();
    con.setRequestMethod("GET");
    
    
    con.setRequestProperty("Authorization",authHeader);
    con.setRequestProperty("Content-Type","application/json");
    
    int responseCode = con.getResponseCode();
    System.out.println("GET Response Code :: " + responseCode);
    if (responseCode == HttpURLConnection.HTTP_OK) { // success
        BufferedReader in = new BufferedReader(new InputStreamReader(
                con.getInputStream()));
        String inputLine;
        StringBuffer response = new StringBuffer();

        while ((inputLine = in.readLine()) != null) {
            response.append(inputLine);
        }
        in.close();

        // print result
        System.out.println(response.toString());
    } else {
        System.out.println("GET request not worked");
    }

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...