我正在尝试使用 RESTlet 创建 NetSuite 的新客户。我在 Postman 中成功添加,但是当我尝试使用来自 Postman 的 PHP - cURL 代码复制到我的代码中时,我得到以下结果:
我正在生成 Oauth 1.0,它在订单记录中工作正常,只是在客户中它不工作。
$base_string =
"POST&" . urlencode(NETSUITE_URL) . "&" .
urlencode(
"&oauth_consumer_key=" . NETSUITE_CONSUMER_KEY
. "&oauth_nonce=" . $oauth_nonce
. "&oauth_signature_method=" . $oauth_signature_method
. "&oauth_timestamp=" . $oauth_timestamp
. "&oauth_token=" . NETSUITE_TOKEN_ID
. "&oauth_version=" . $oauth_version
. "&realm=" . NETSUITE_ACCOUNT
);
$sig_string = urlencode(NETSUITE_CONSUMER_SECRET) . '&' . urlencode(NETSUITE_TOKEN_SECRET);
$signature = base64_encode(hash_hmac("sha256", $base_string, $sig_string, true));
$auth_header = "OAuth "
. 'oauth_signature="' . rawurlencode($signature) . '", '
. 'oauth_version="' . rawurlencode($oauth_version) . '", '
. 'oauth_nonce="' . rawurlencode($oauth_nonce) . '", '
. 'oauth_signature_method="' . rawurlencode($oauth_signature_method) . '", '
. 'oauth_consumer_key="' . rawurlencode(NETSUITE_CONSUMER_KEY) . '", '
. 'oauth_token="' . rawurlencode(NETSUITE_TOKEN_ID) . '", '
. 'oauth_timestamp="' . rawurlencode($oauth_timestamp) . '", '
. 'realm="' . rawurlencode(NETSUITE_ACCOUNT) . '"';
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => 'https://8648945.suitetalk.api.netsuite.com/services/rest/record/v1/customer',
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => '',
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 0,
CURLOPT_FOLLOWLOCATION => true,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => 'POST',
CURLOPT_POSTFIELDS => '{
"companyName": "Company 1615554322",
"email": "[email protected]"
}',
CURLOPT_HTTPHEADER => array(
'Content-Type: application/json',
'Authorization: ' . $auth_header . ''
),
));
$response = curl_exec($curl);
curl_close($curl);
echo $response;`
我收到的错误:
"title":"Unauthorized","status":401,"o:errorDetails":[{"detail":"Invalid login attempt. For more details, see the Login Audit Trail in the NetSuite UI at Setup > Users/Roles > User Management > View Login Audit Trail.","o:errorCode":"INVALID_LOGIN"}]}
我正在使用此代码添加订单,但是当我尝试记录客户时,出现此错误。