It seems to be working for me using a token-based call. I'm using a LoadVars object to make the call and with the following request URL:
http://api.msappspace.com/opensocial/v1/VIEWER/appdata.xml?opensocial_token=[user-token-here]&opensocial_mode=canvas&detailtype=BASIC&_method=PUT
And, the variables I want to set applied to the LoadVars object, the request successfully sets user app data.
Here's an example:
function makePost(request:String, data:Object) {
var send_lv:LoadVars = new LoadVars();
for (var x:String in data) {
send_lv.[x] = escape(data[x]);
}
send_lv.sendAndLoad(request,result_lv,"POST");
} Where request is like the URL above and result_lv is another LoadVars object set to recieve onHTTPStatus and onData.
I don't actaully get any data back on the onData response (just null), but I do get back an httpStatus code of 200.
When I try doing something similar using http://api.myspace.com/v1/ and OAuth, I get the following response:
<error>
<statuscode>400</statuscode>
<message>Method Override not supported for method: GET </message>
</error>
So, I guess it's not set up on that REST domain. Maybe I'm not putting the _method= param in the right place, but that error message seems pretty specific.
At least it's working for token-based calls and that's a good start. Thanks for tracking down that example Eddie.
~Brock