相关疑难解决方法(0)

调用Controller Post方法时遇到麻烦

这是我的方法

    [AcceptVerbs(HttpVerbs.Post)]
    public void SaveImage(FormCollection formValues)
    {
        byte[] contents = Convert.FromBase64String(Request.Form["file"]);
        System.IO.File.WriteAllBytes(Server.MapPath(Request.Form["name"]), contents);
    }
Run Code Online (Sandbox Code Playgroud)

它将从此actionscript方法发布到:

    public function encodeAndSave(e:MouseEvent = null):void
    {
        var date:Date = new Date();
        var by:ByteArray = PNGEnc.encode(canvas.main_bdata);
        var req:URLRequest = new URLRequest(server_path+"Home/SaveImage");
        var params:URLVariables = new URLVariables();
        params.file = Base64.encodeByteArray(by);
        params.name = "MyImage.png";
        req.method = URLRequestMethod.POST;
        req.data = params;
        var ldr:URLLoader = new URLLoader(req);

        ldr.addEventListener(Event.COMPLETE, complete);

        ldr.load(req);

        function complete(e:Event):void
        {
            navigateToURL(new URLRequest("?" + Math.random()), "_self");

        }

    }
Run Code Online (Sandbox Code Playgroud)

但是当encodeAndSave方法运行时,没有文件保存到服务器......

有谁知道如何判断SaveImage方法是否已运行?另外,当我在地址栏中键入:http: //www.mysite.com/Home/SaveImage时,它会显示"无法找到资源".

任何人都有任何想法,为什么它会这样做或我能做些什么来试图找出它?

如果您需要更多信息,请告诉我,我会更新我的问题.

谢谢,
马特

asp.net-mvc file-io controller http-post actionscript-3

1
推荐指数
1
解决办法
2848
查看次数