私はAPI呼び出しのアクセストークンを取得するためにChrome Advanced Rest Client(ARC)を使用しました。私はそこで働いているものを取り出し、SSIS Script ComponentでPOST呼び出しに変換しようとしています。フォームデータでOAUTH2へのPOST
私はポストのデータ形式セクションに含める必要がある4つの値を有します。
grant_type = client_credentials
と私たちのPARTNER_ID、CLIENT_IDおよびclient_secret。
どのようにしてこの情報をリクエストに入力しますか?ここで私が使用しようとしているコードです。私はトークンをハードコードするときに動作するGETを行う別のセクションを持っています。私はGETで使用する新しいトークンを取得するためにこのPOST呼び出しを取得しようとしています。
private TokenObject GetWebServiceToken(string wUrl)
{
string grant_type = "client_credentials";
string partner_id = "our partner_id";
string client_id = "our client_id";
string client_secret = "our encoded string";
HttpWebRequest httpWReq = (HttpWebRequest)WebRequest.Create(wUrl);
httpWReq.Method = "POST";
httpWReq.ContentType = "application/x-www-form-urlencoded";
HttpWebResponse httpWResp = (HttpWebResponse)httpWReq.GetResponse();
TokenObject jsonResponse = null;
try
{
//Get the stream of JSON
Stream responseStream = httpWResp.GetResponseStream();
//Deserialize the JSON stream
using (StreamReader reader = new StreamReader(responseStream))
{ //Deserialize our JSON
DataContractJsonSerializer sr = new DataContractJsonSerializer(typeof(TokenObject));
jsonResponse = (TokenObject)sr.ReadObject(responseStream);
}
}
//Output JSON parsing error
catch (Exception e)
{
FailComponent(e.ToString());
}
return jsonResponse;
}
ありがとう!それはうまくいった! – Leslie