如何从swf接收aspnet mvc中的数据

时间:2013-06-28 16:18:23

标签: asp.net-mvc actionscript-3 flex

这是我发送的方式:

var request:URLRequest = new URLRequest(url);
request.requestHeaders.push(new URLRequestHeader("Accept", "application/json"));
request.method = URLRequestMethod.POST;

request.data = { id:1, name:"hello" };

var loader:URLLoader = new URLLoader;
configureListeners(loader);
loader.load(request);

这就是我收到的方式:

public HttpResponseMessage Post(object data)
{
    return Request.CreateResponse(HttpStatusCode.OK, data);
}

data此处为{}

1 个答案:

答案 0 :(得分:0)

您的ASP方法需要一个名为data的参数。所以我的猜测是,如果您在AS3代码中执行此操作将会起作用:

request.data = { data: {id:1, name:"hello"} };  //creating an object with the property data, and giving it's value an object with id and name properties

或者,更好的是,忽略上面的行并保持闪存原样,并在ASP中创建一个具有idname属性的视图模型。然后MVC数据绑定器将会发挥作用。

public class FlashData {
    public string id {get;set;}
    public string name {get;set;}
}

public HttpResponseMessage Post(FlashData data){
   //data.id
   //data.name
   return Request.CreateResponse(HttpStatusCode.OK, data);
}

你可以尝试的另一件事是:

public HttpResponseMessage Post(string id, string name){
    return Request.CreateResponse(HttpStatusCode.OK, new {id=id,name=name});
}