如何在javascript中访问控制器返回值
我有一个java脚本函数,用于保存网络摄像头图像,代码如下所示如何在javascript中访问控制器返回值,javascript,jquery,razor,model-view-controller,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
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;
}
在我的控制器中,代码如下所示
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中得到这个返回值,我必须将这个变量传递给另一个函数。我尝试执行警报(webcam.save(@Url.Content(“~/Image/ImageCapture”)/”)
,但此处发出警报的消息是true
,但我希望返回sessionIdValue。我很困惑,如果我必须使用Ajax,如果是的话,我不知道如何调用这个URL。因为这是网络摄像头保存方法
请让我知道如何才能做到这一点
谢谢这
@Url.Content(“~/Image/ImageCapture”)
是您的返回值。只需在警报
功能中使用此选项,而不是使用网络摄像头。save(“@Url.Content(“~/Image/ImageCapture”)/”
。如果您无法将此值作为图像或字符串访问,则必须检查操作。您好@Eisa,感谢您的快速响应,不幸的是,我得到的响应是/Image/ImageCapture
:(请让我知道我哪里出错了…首先,在调用此操作时检查响应值。在地址栏中键入[本地主机或IP]/Image/ImageCapture
。如果响应是图像,则使用$([图像选择器]).attr('src','@Url.Content(~/Image/ImageCapture'))
在图像标记中显示它。请尝试发出警报(“[本地主机或IP]/image/ImageCapture”);