我将图像存储在项目Web API中的App_Data文件夹中。我用路径存储在数据库中:
var path = Path.Combine(System.Web.HttpContext.Current.Server.MapPath("~/App_Data/"), user.Username + ext);
从项目MVC客户端我调用Web Api,从路径图像我无法显示标记<img />
。 Chrome显示错误:不允许加载本地资源。
<img id="img_id" width="70px" heigh="70px" src="D:\Nguyen Nhu\Lap Trinh Hien Dai\ServerAPI\ServerAPI\App_Data\nophoto.gif"/>
如何解决?
答案 0 :(得分:2)
通常,您应该使用Url.Content而不是Server.MapPath
来映射MVC中的服务客户端Url。 Server.MapPath返回物理文件夹,只能由服务器端代码使用。
但是,App_Data
是IIS中存储的特殊文件夹和文件won't be served。
TL; DR :您需要使用其他文件夹存储图片,例如
Url.Content('~/MyImagesFolder/' + user.Username + ext);