0

我正在尝试使用邮递员访问 2sxc api,但由于某种原因无法正常工作。

$2sxc(moduleContext)
      .webApi.get('app/auto/api/List/persons')

我正在使用 [域]/DesktopModules/api/2sxc/counterApp/List/persons

但我收到 404 错误。

使用 $2sxc 确实有效。但我想从非 DNN 网站拨打电话。代码:照片:2sxc api 控制器

4

2 回答 2

1

您必须了解 3 种魔法。

  1. 您是否只想要任何带有 REST(获取全部、1、更新、删除)、自定义查询或自定义处理代码的内容
  2. 正确的路径
  3. 权限

一般来说,所有使用 $2sxc 的示例也可以从外部工作,但您必须修改 URL(因为自动检测不起作用)并且您必须设置权限。

对于 URL 路径,您可以使用与 $2sxc 调用相同的路径(检查您的 F12 JS 控制台),但替换auto为应用程序名称,因为 auto 在 DNN 之外不起作用。

对于权限,您必须在内容类型级别添加它们(内容类型侧面的人物图标)

顺便说一句,好消息:2sxc 11.08 或 11.09 将在 admin-UI 中内置大量指南,仅针对此用例 :)

于 2020-10-13T05:33:36.273 回答
0

您是在 Content App 中还是在您自己的自定义应用程序中?

如果您在内容应用程序中,则自动路径是

https://example.com/DesktopModules/2sxc/api/app/content/content/Person
|------------------ root -------------------|- app/id --|-part--|--type

以上应该可以在不编写代码(控制器)的情况下工作。

如果您在自己的自定义应用程序中,那么您将编写自己的自定义控制器。您可以在这里阅读ASP.net WebAPI in 2sxc。在假的例子中,下面是 Portals/0/2sxc/myapp/api/PublicController.cs

https://example.com/api/2sxc/app/myapp/api/public/persons
|------------------ root ----|-app/id--|-controller|-function
于 2020-10-11T16:53:16.693 回答