NetSuiteの送信でRestSharpを使用しました。
最初、NetSuiteの接続が分からなかった。
相手から指定されていたのを見逃していました。
OAuth1.0とMHAC-SHA256の仕様
OAuth1.0の場合、SHA1が標準らしく、NetSuiteの送信しても
901のエラーが発生して送信出来なかった。
RestSharp version 108以降は SHA256に対応したそうで
明示的に指定すれば NetSuiteの送信出来ました。
ソースは以下
var authenticator = OAuth1Authenticator.ForProtectedResource(
consumerKey,
consumerSecret,
accessToken,
accessTokenSecret,
OAuthSignatureMethod.HmacSha256
);
authenticator.Realm = realm;
var options = new RestClientOptions(apiurl) {
Authenticator = authenticator
};
using (var client = new RestClient(options)) {
....
}
OAuthSignatureMethod.HmacSha256
SHA256を指定すればOKでした。
この設定が分からなくて、1日右往左往しました。
Gemini, Grok, CoPilot どれも指摘しなかった。
Githubの変更履歴から情報を取得しました。
ちなみに OAuth1.0 + SHA256に対応しているライブラリは
RestSharpのVersion108以降 又は Chilkat コチラは有料でした。
OAuth1.0を使用するなら OAuth2.0を採用するので OAuth1.0+SHA256の
採用案件は今後ないかなぁ。