私は Adobe AIR を使用しており、REST API を介して force.com プラットフォームと統合しています。これまでのところ、比較的順調に進んでいますが、このDELETE
方法を使用することに行き詰まりを感じています。
ドキュメントは十分に単純です。
アカウント レコードの削除
レコードを削除するには、DELETE メソッドを使用します。この例では、Account レコードが削除されます。
Account オブジェクトの項目を削除する使用例
curl https://instancename.salesforce.com/services/data/v20.0/sobjects/Account/001D000000INjVe -H "Authorization: Bearer token " -H "X-PrettyPrint:1" -X DELETE
Account レコードを削除するためのリクエスト本文の例
不要
Account レコードを削除するためのレスポンス本文の例
何も返されませんでした
HTTPConnection.send()
私のコードは以下のとおりです。 の 2 番目のパラメーターは呼び出すメソッドであることに注意してください。
var headers:Object = new Object();
headers["Authorization"] = "Bearer "+ConnectionAccessToken;
var url:String = ConnectionInstanceURL + "/services/data/v"+_apiVersionNumber+"/sobjects/"+type+"/"+id;
var response:RESTResponse = new RESTResponse(callback);
var httpCallback:IResponder = new mx.rpc.Responder(response.resultHandler,response.faultHandler);
HTTPConnection.send(headers,"DELETE",url,httpCallback);
同様のコードは他の操作でも完全に機能します。奇妙なことに、これ自体は失敗せず、成功の応答を受け取りますが、問題のレコードをすべてのフィールドとともに取得します。の結果が表示されているように見えますが、レコードが削除されていない[select * from Object where Id = <id>
ことを明確にするためです。オブジェクトにはマスター詳細関係がないため、この削除の発生を妨げている可能性があるものは他にありません。以前に誰かがこれに遭遇したことがありますか、それを解決する方法について提案がありますか?