我正在使用Adobe AIR並通過REST API與force.com平臺進行集成,到目前爲止它的運行相對平穩,但我在使用DELETE
方法時未能取得進展。Salesforce REST API和DELETE方法
刪除帳戶記錄
使用Delete方法刪除記錄。 在本例中,賬戶記錄被刪除。
實施例的使用用於刪除字段帳戶對象
捲曲https://instancename.salesforce.com/services/data/v20.0/sobjects/Account/001D000000INjVe -H 「授權:承載令牌」 -H 「X-PrettyPrint:1」 -X DELETE
實施例要求刪除帳戶記錄的機構
不需要
示例響應體用於刪除帳戶記錄
無返回
我的代碼是下面,注意,HTTPConnection.send()
第二個參數是要調用的方法。
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>
的結果,而只是爲了澄清記錄是沒有刪除。該對象沒有任何主要的細節關係,所以我不確定還有什麼可以阻止這種刪除發生 - 有沒有人遇到過這種情況,或有如何解決它的建議?
HTTPConnection? donde esta?你是從哪裏得到這門課的?它是否支持「DELETE」作爲HTTP方法? – shaunhusain 2012-07-31 02:15:04
+1,我先打一個TCP嗅探器(我通常會求助於http://ws.apache.org/commons/tcpmon/),然後首先驗證你發送的內容是否合法。您可能實際上並沒有發送您認爲自己的動詞,並且支持您似乎收到對GET的迴應。 – jkraybill 2012-07-31 02:36:08
看起來我可能像往常一樣忽略了明顯。我做了一個危險的假設,即HTTPConnection是Adobe提供的類,它不是,它利用了Adobe的HTTPService類。 看起來我已經做了一些調查: 「或者,您可以將參數傳遞給指定的URL。當您不通過基於服務器的代理服務時,只能使用HTTP GET或POST方法。但是,將useProxy屬性設置爲true並且使用基於服務器的代理服務時,也可以使用HTTP HEAD,OPTIONS,TRACE和DELETE方法。「 – 2012-07-31 03:11:36