我对Web服务很陌生.现在我使用kraken.io API来调整上传图像的大小有问题.
请求响应时,它总是抛出异常.
任何帮助表示赞赏.非常感谢你.
参考kraken.io API文档:https://kraken.io/docs/upload-url
这就是我到目前为止所做的
触发:
byte[] data = new byte[fuImage.PostedFile.ContentLength];
fuImage.PostedFile.InputStream.Read(data, 0, fuImage.PostedFile.ContentLength);
objKraken krakenio = new objKraken();
krakenio.wait = true;
krakenio.resize = new objKResize() { width = Base_Controller.DealsWidth, height = Base_Controller.DealsHeight, strategy = "exact" };
Controller_Kraken.UploadFile(data, krakenio);
Run Code Online (Sandbox Code Playgroud)
控制器:
public const string UploadAPIUrl = "https://api.kraken.io/v1/upload";
public static bool UploadFile(byte[] data, objKraken krakenInfo)
{
try
{
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(UploadAPIUrl);
webRequest.Method = "POST";
webRequest.ContentType = "multipart/form-data";
string jsonString = JsonConvert.SerializeObject(krakenInfo);
webRequest.ContentLength = data.Length + jsonString.Length;
using …Run Code Online (Sandbox Code Playgroud) 我们正在使用第 3 方 api kraken.io来优化我们的图像。
优化图像的结果发布在Webhook.
在他们的API文档它规定:优化过海妖后,将POST消息到callback_url在一个你的要求指定的JSON格式application/json。
我正在使用ngrok 允许远程webhooks发送数据到我的开发机器,使用这篇文章。
发布到回调 URL 的结果:
HTTP/1.1 200 OK
{
"id": "18fede37617a787649c3f60b9f1f280d",
"success": true,
"file_name": "header.jpg",
"original_size": 324520,
"kraked_size": 165358,
"saved_bytes": 159162,
"kraked_url": "http://dl.kraken.io/18/fe/de/37617a787649c3f60b9f1f280d/header.jpg"
}
Run Code Online (Sandbox Code Playgroud)
类到映射
public class KrakenOptimizedResults
{
public string id { get; set; }
public bool success { get; set; }
public string file_name { get; set; }
public int original_size { get; set; } …Run Code Online (Sandbox Code Playgroud) asp.net-mvc json json.net asp.net-mvc-4 kraken-image-optimizer