0

我有一个 web api 控制器 GET api 方法,在该方法中我调用外部 REST 服务来获取数据。我想在 asp.net 页面上显示一段数据(我的数据模型类中用于保存外部 Web 服务数据的属性)。api 控制器调用存储库类库的方法,我从外部 REST 服务获取数据并在我的 web api 控制器中返回。

我在使用 PDF Tron Web 查看器控件的 ASP.NET 页面上的 javascript 中调用我的 web api contoller get api 方法。

<script src="settings.js"></script>

我不想使用 Session(虽然 Session 不可用,但可以使用变通方法来使用 Session),因为它会使我的 REST api 有状态。

请告知哪些选项可用于从 asp.net 页面中的 web api 控制器获取数据。

//Settings.js code

window.WebViewerUniversalInstance.model.set(
{     
    documentUrl: "/api/Document/?type=XOD&docno=101",    
    //serverUrl: "../html5/annotationHandler.php",    //server script for handling annotations
    annotationUser: new PDFTron.WebViewer.User("Guest", false),
    currentPageNumber: 0,
    pageCount: 0,
    zoomLevel: 0,
    fitMode: PDFTron.WebViewer.FitMode.Zoom,
    layoutMode: PDFTron.WebViewer.LayoutMode.SinglePage,
    toolMode: '',
    rotation: 0,
    webViewerLibPath: 'lib/', //URL path to the WebViewer lib folder
    webViewerOptions: { //extra WebViewer options
        silverlightOptions: {
            enableAnnotations: false //disable annotations if silverlight is loaded. 
            }
        }
    }
);
4

1 回答 1

0

documentUrl 选项只是一个辅助方法,不能像您尝试做的那样重载。

如果您想优化单个服务器调用,那么您将自己手动执行此操作,就像您通常使用 ASP.Net 发出任何服务器请求一样。

所以回应

/api/Document/?type=XOD&docno=10

您的服务器可能会返回某种响应,如下所示。

{
  xodurl: url,
  metadata1: data1,
  metadata2: data2
}

然后将 url 参数传递给 WebViewer documentUrl 参数。

于 2017-02-10T19:34:33.223 回答