セールスフォースと統合されたiOSアプリを作成しています。iOSアプリは、httpリクエストの本文でJSONデータをセールスフォースに送信します。apexで本文をJSON文字列として取得するにはどうすればよいですか?
ありがとう
セールスフォースと統合されたiOSアプリを作成しています。iOSアプリは、httpリクエストの本文でJSONデータをセールスフォースに送信します。apexで本文をJSON文字列として取得するにはどうすればよいですか?
ありがとう
このようなもの(Apex内からコールアウトを行う場合、それ以外の場合はWebサービスを使用して着信コールをキャプチャし、同様の方法で解析します)。
HTTPリクエストオブジェクトを準備します。
// Prepare HTTP
HTTPResponse hTTPRes;
HTTPRequest req = new HttpRequest();
req.setTimeout(120000);
エンドポイントを設定します。
req.setEndpoint(baseURL + callName + '?' + parameterString);
呼び出しを行う:
HTTP http = new HTTP();
String body;
hTTPRes = http.send(req);
body = hTTPRes.getBody();
JSONパーサーを呼び出して、結果を解析します。
// Invoke JSON parser
JSONParser parser = System.JSON.createParser(body);
// Parse JSON response to get individual field values.
while(parser.nextToken() != null)
{
if((parser.getCurrentToken() == JSONToken.FIELD_NAME) && (parser.getText() == 'yourfield'))
// store values as you walk the JSON
}
salesforce.comに単純なRESTWebサービスを実装できます。これは非常に簡単で、JSONまたはXMLメッセージのサポートが組み込まれています。APEXドキュメントの次のページをご覧ください。http:
//www.salesforce.com/us/developer/docs/apexcode/Content/apex_rest_methods.htm
この統合の複雑な部分は認証です。RESTまたはSOAPのどちらを使用する場合でも、認証には有効なセッションIDが必要です。これは、標準のWebサービスAPIのログイン操作を呼び出すか、RESTアプローチにより適しているが、非常に複雑になる可能性があるOAuthを使用して行うことができます。特にiOS開発用のもう1つの統合オプションは、Simon FellのzksForceフレームワークです。これは、標準のsalesforce.com WebサービスAPIと対話するための確実な方法を提供します:
GitHubのzkSforce