2

在关闭浏览器选项卡时,我正在尝试自动保存用户的更改。我已经在时间线的其他点验证了这项工作;使用相同的功能。我在unload处理程序中调用它:

$( window ).unload(function() {        
    saveAnnotations(pdfState.pdfs[pdfState.activePdfIndex].PdfPages[pdfState.activePageIndex]);
});

保存用户的更改涉及该saveAnnotations函数内的 RESTful PUT,使用Oboe库:

oboe({
  url: configuration.rootApiUrl + 'PdfPages/' + page.ID,
  method: 'PUT',
  body: page
}).done(function(jobs) { // Our call does not provide a callback
  if(callback !== undefined && _.isFunction(callback)) {
    callback();
  }
});

接收此信息的服务器是 Microsoft Web API 服务器。我在本地运行客户端和服务器进行测试。

在诊断这一点时,我将上面的代码编辑为 GET 而不是 PUT,它在服务器上的路由内遇到了断点。但是,在执行 PUT 时,我不会在选项卡关闭时点击该服务器路由内的断点。为什么它适用于 GET 而不是 PUT?我必须做什么才能让服务器接收我的 PUT?我的直觉是它是客户端,而不是服务器端。如果查看服务器路由会有所帮助,我可以发布它,但否则我不想让问题变得混乱。

4

0 回答 0