gpt4 book ai didi

c# - 如何使用 javascript 将 blob 图像从 html 页面上传到 C# 代码

转载 作者:行者123 更新时间:2023-11-30 17:26:14 25 4
gpt4 key购买 nike

目前我有这段代码,

在我的 html 页面中,在我的表单上:

<input type="file" id="txtUploadFile" accept="image/*" onchange="changetext();"/>

我在 doUpload() 函数上使用 javascript 上传图片

function doUpload() {
var srwebserviceURL = "/Webservices/Facilities/ServiceRequest.asmx";
var sMsgBody = "<filePath>" + txtUploadFile.value + "</filePath>";
var a = sendSoapMsg(srwebserviceURL, "SaveSRLogoPhotoSite", sMsgBody, "SaveSRLogoPhotoSiteResult");
}

正如您从上面的代码中看到的,我将照片的文件路径传递到我的网络服务。

在我的网络服务 SaveSRLogoPhotoSite 上,我有 ff。代码:

public SRLogoPhoto SaveSRLogoPhotoSite(string filePath)
{
DataSet ds = null;
Hashtable param = new Hashtable();
SRLogoPhoto srlp = new SRLogoPhoto();

try
{

System.IO.FileStream fs = new System.IO.FileStream(filePath, System.IO.FileMode.Open, System.IO.FileAccess.Read);

Byte[] b = new Byte[fs.Length];
fs.Read(b, 0, b.Length);
fs.Close();
SqlParameter P = new SqlParameter("@Picture", SqlDbType.VarBinary, b.Length, ParameterDirection.Input, false, 0, 0, null, DataRowVersion.Current, b);

string sqlStr = "UPDATE SRSiteLogo SET srImage = @Picture ";

param.Add("Picture", P);

ds = dbHelper.GetDataSet(sqlStr, param);

}
catch (Exception ex)
{
srlp.Error = "SaveSRLogoPhotoSite() web method failed on call to dbHelper.GetDataSet - " + ex.Message;
}

return srlp;
}

这在我的本地电脑上运行。但是当我将它部署到我的电脑以外的环境时,它似乎不起作用。当我尝试在 soapUI 中进行调试时,它说它找不到文件路径

似乎我应该在我的 web 服务上传递的文件路径应该首先在服务器上,而不是它所在的 pc 的当前文件系统的文件路径。

我该怎么做?

--编辑-- 我被告知可以使用 ajax..我是 ajax 的新手,不知道该怎么做..

提前致谢

最佳答案


当你在本地运行web时,你需要上传的文件和服务器在一台机器上,所以你可以确定文件路径并执行上传任务。但是,当您将 Web 部署到另一台服务器时,您无法确定路径文件。您必须将文件转换为流并发送到服务器,读取流,转换为预期格式并继续。谢谢。

关于c# - 如何使用 javascript 将 blob 图像从 html 页面上传到 C# 代码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24196294/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com