如何在jsPlumb保存函数

时间:2016-11-21 17:05:57

标签: javascript jsplumb

我试图在jsPlumb中保存流程图(我使用jsPlumb工具包版本)。我的保存功能如下所示:

 jsPlumb.on(controls, "tap", function () {
        toolkit.save({
            url: "http://localhost:51987/api/Index/Save",
        });
    });

我的问题是我不知道如何在jsPlumb保存功能中将请求标头设置为application / json

我得到"无法在浏览器控制台中加载资源:服务器响应状态为415(不支持的媒体类型)"错误。

在Fiddler中检查请求:

  

HTTP / 1.1 415不支持的媒体类型缓存控制:no-cache Pragma:   no-cache Content-Type:application / json; charset = utf-8到期:-1   服务器:Microsoft-IIS / 10.0 X-AspNet-版本:4.0.30319 X-SourceFiles:   =?UTF-8 2 B 4 QzpccHJvamVjdHNcc3Bpa2VzXHBsdW1wLXNwaWtlXGpzUGx1bWJBUElcanNQbHVtYkFQSVxhcGlcSW5kZXhcU2F2ZQ ==?=   X-Powered-By:ASP.NET日期:星期一,2016年11月21日16:33:54 GMT   内容长度:910

     

{"消息":"请求实体的媒体类型' text / plain'不是   支持此资源。"," ExceptionMessage":"没有   MediaTypeFormatter可用于读取类型的对象   ' JsPlumbViewModel'来自媒体类型的内容   ' text / plain的'"" ExceptionType":" System.Net.Http.UnsupportedMediaTypeException""堆栈跟踪":& #34;   在System.Net.Http.HttpContentExtensions.ReadAsAsync [T](HttpContent)   content,Type type,IEnumerable 1 formatters, IFormatterLogger formatterLogger, CancellationToken cancellationToken)\r\n at System.Net.Http.HttpContentExtensions.ReadAsAsync(HttpContent content, Type type, IEnumerable 1格式化程序,IFormatterLogger formatterLogger,   取消语音取消语句)\ r \ n at   System.Web.Http.ModelBinding.FormatterParameterBinding.ReadContentAsync(HttpRequestMessage   请求,类型类型,IEnumerable`1格式化程序,IFormatterLogger   formatterLogger,CancellationToken cancellationToken)"}

1 个答案:

答案 0 :(得分:1)

在创建JSPlumb实例时添加标头:

var toolkit = jsPlumbToolkit.newInstance({
  saveUrl:"http://sava-data.com",
  saveHeaders:{
    "Content-Type":"application/json"
  }
});