如何在javascript中访问控制器返回值

时间:2017-02-19 11:15:26

标签: javascript jquery razor model-view-controller

我是一个java脚本函数,用于保存网络摄像头图像,代码如下。

onCapture: function () {
                webcam.save("@Url.Content("~/Image/ImageCapture")/");
                MatchFindFunction();
            }

在我的控制器中代码如下。

public void ImageCapture() //Capturing the image and save to folder
        {

            if (!Directory.Exists(Server.MapPath(@"~/Temp")))
            {
                Directory.CreateDirectory(Server.MapPath(@"~/Temp"));
            }

            string sessionIdValue = getSessionID();
            tempPath = "~/Temp/" + sessionIdValue + ".jpg";
            System.Web.HttpContext.Current.Session["tempImagePath"] = sessionIdValue;

            CommonModel.path = Server.MapPath(tempPath);
            CommonModel.stream = Request.InputStream;
            using (CommonModel.reader = new StreamReader(CommonModel.stream))
                CommonModel.dump = CommonModel.reader.ReadToEnd();
            System.IO.File.WriteAllBytes(CommonModel.path, ConvertStringToByte(CommonModel.dump));
return sessionIdValue;
        }

所以我的要求是,我想在Javascript中获取此返回值,我必须将此变量传递给另一个函数。我尝试了alert(webcam.save("@Url.Content("~/Image/ImageCapture")/")),但此处提醒的消息是true,但我想要sessionIdValue作为回报。我很困惑,如果我必须使用Ajax,如果是这样,我不确定如何调用此URL。因为这是网络摄像头保存方法。

请告诉我如何才能这样做。

由于

1 个答案:

答案 0 :(得分:1)

@Url.Content("~/Image/ImageCapture")是您的返回值。只需使用此功能,而不是在webcam.save("@Url.Content("~/Image/ImageCapture")/"函数中使用alert