通过来自其他域的ajax调用设置cookie

时间:2016-08-18 21:03:25

标签: c# asp.net cookies cross-domain

我在domain-A.com上有一个用asp.net mvc编写的应用程序,并且domain-B.com上还有一个其他外部服务,最终会将用户重定向到我的应用程序。但由于我有一些性能问题,我希望我的应用程序准备就绪,然后重定向到我的网站并缓存一些数据。所以domain-B从domain-A.com调用一个端点,domain-A.com为自己设置会话cookie或任何其他cookie(不适用于domain-B.com,这很重要)以及重定向发生时domain-A.com为自己读取cookie并完成其工作人员。这是可能的,如果它是什么方法。

2 个答案:

答案 0 :(得分:0)

你的问题不是很清楚。 如果您尝试在浏览器中为应用程序缓存一些静态数据,那么我建议您考虑使用本地存储:

以下是一些开始的指示: http://www.w3schools.com/html/html5_webstorage.asp https://www.smashingmagazine.com/2010/10/local-storage-and-how-to-use-it/

另一方面,您可以使用javascript代码轻松设置Cookie,因此我不明白您正在努力解决的问题。

您在帖子中使用了几个单词,这让我很奇怪......首先是'会话cookie'。现在'Session'是一个不同的故事。你指的是浏览器会话吗?申请会议?您是否尝试在不同域之间共享同一会话?

第二个可疑短语是“来自域A的一个端点”。这个端点究竟是什么?您指的是WCF端点吗?一个网页?

我认为您需要提供有关帖子的更多详细信息以获得正确答案:)

答案 1 :(得分:0)

您无法通过其他域上的AJAX设置Cookie。

你可以做的是从隐藏的IFrame中的“domain-a”渲染一些页面,并让它设置任何你想要的cookie /缓存。

注意:这可能只是您网站渲染所需的时间的两倍。解决实际性能问题可能会提供更好的用户体验。