0

我有一个使用表单身份验证 (SimpleMembershipProvider) 的 ASP.Net (MVC) Web 应用程序。我还有一个使用 Flex builder 开发的 Flex GIS Viewer 应用程序。

我可以通过从我的 Web 应用程序(用 c# 编写)调用 arcgis Web 方法 GetToken() 并使用为进行地图服务调用提供的令牌(使用 JavaScript)来连接到底层地图服务。我错误地认为我可以将令牌传递给 Flex Viewer 应用程序,或者至少在我连接后保持与地图服务的会话。

是否有某种方法可以将此令牌提供给 Flex Viewer,以便用户不必提供两次凭据(Web 应用程序和 flex 查看器)?我可能在考虑 URL,因为我了解 Flex Viewer 需要为每个地图服务调用提供一个令牌。

还是我完全走错了路?我的方法是使用 JavaScript 而不是 flex,因为我可以做到这一点,但如果我能提供帮助,我想避免重做 Web 查看器。

4

1 回答 1

0

回答我自己的问题......我最初的方法是错误的。无法将令牌作为查询参数传递给 Flex Viewer 应用程序。

解决方案是让我的应用程序代理请求来自 Flex Viewer 应用程序 - 我只是将 proxy.config 和 proxy.ashx 文件复制到我的应用程序的根目录。

用户首先通过 Web 应用程序进行身份验证(表单身份验证),然后加载指向 Flex Viewer 的链接。地图服务请求从 Flex Viewer 发送到我的 Web 应用程序(必须配置 Flex Viewer 和小部件以使用代理)。然后,Web 应用程序会检查用户是否已通过身份验证,然后再从 ArcGIS 动态请求令牌以伴随原始地图服务请求。

于 2013-10-14T05:31:26.020 回答