【发布时间】:2016-05-07 05:31:41
【问题描述】:
我有一个 Rest API:
[HttpPost]
[Route("Services/Image/Upload")]
public string Upload([FromBody]GalleryItem galleryItem)
{
try
{
var appSettings = ConfigurationManager.AppSettings["GalleryPath"].ToString();
using (FileStream fs = new FileStream(appSettings + galleryItem.KeyCode + ".jpg", FileMode.Create))
{
using (BinaryWriter bw = new BinaryWriter(fs))
{
byte[] data = Convert.FromBase64String(galleryItem.Base64);
bw.Write(data);
bw.Close();
}
}
return "OK";
}
catch (Exception ex)
{
return ex.ToString();
}
}
我从我的 Javascript 客户端调用它,例如:
var galleryItem = new Object();
galleryItem.Base64 = base64;
galleryItem.KeyCode = '1234';
url = "http://my domain name/api/Services/Image/Upload";
$.ajax({
type: 'POST',
url: url,
data: JSON.stringify(galleryItem),
contentType: 'application/json; charset=utf-8',
dataType: 'text/plain',
success: function (msg) {
alert('Image saved successfully !');
},
error: function (jqXHR, textStatus, err) {
$('#error').html('Error: ' + err);
}
});
我的模特:
public class GalleryItem
{
public string Base64 { get; set; }
public string KeyCode { get; set; }
}
我正在通过移动设备进行测试,因为我正在从相机拍摄图像以发送。
似乎什么都没有发生?我只是'错误:错误'?
谢谢
附加: 移植到测试脚本后(希望我早点完成),我发现错误是这样的:
net::ERR_NAME_NOT_RESOLVED
虽然我不确定为什么我从那个 api 调用另一个方法没有问题
【问题讨论】:
标签: javascript ajax asp.net-web-api2