Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS传递Cookie,但不允许传递任何内容_Javascript_Angularjs_Cookies - Fatal编程技术网

Javascript AngularJS传递Cookie,但不允许传递任何内容

Javascript AngularJS传递Cookie,但不允许传递任何内容,javascript,angularjs,cookies,Javascript,Angularjs,Cookies,我开发了一个基于Angular的网络商店,它以Woocommerce为后端。当我向购物车添加一个项目时,服务器会用一个“Set Cookie”头响应,该头是WooCommerce会话id所在的位置。这个cookie应该在下一个请求时传递给服务器,以便服务器知道它是同一个会话。但是,如果在来自Angular$http调用的请求中没有设置allowCredentials标志,则cookie不会传递到服务器 我们首先做的是将allowCredentials设置为true,效果非常好!现在我们正在为同一

我开发了一个基于Angular的网络商店,它以Woocommerce为后端。当我向购物车添加一个项目时,服务器会用一个“Set Cookie”头响应,该头是WooCommerce会话id所在的位置。这个cookie应该在下一个请求时传递给服务器,以便服务器知道它是同一个会话。但是,如果在来自Angular$http调用的请求中没有设置
allowCredentials
标志,则cookie不会传递到服务器

我们首先做的是将
allowCredentials
设置为
true
,效果非常好!现在我们正在为同一家商店开发一款Ionic应用程序。我们无法设置allowCredentials标志,因为它不允许与
访问控制允许源代码:
一起使用,我们需要设置它,因为应用程序正在从不同的源代码调用API


我们如何在不设置allowCredentials标志的情况下通过cookies?

尝试将所有白名单上的原点(逗号分隔)作为
访问控制允许原点
标题的值,而不是
*
,因为您不能将
*
allowCredentials
选项设置为
true
混合使用。当我有数百个手机将尝试连接时,我该如何做?我不能列出它们中的每一个,对吗?简单而愚蠢的解决方案是,将请求的来源作为
Access Control Allow origin
头的值,但请记住,这是有风险的,但我没有单一的请求来源,但有许多(每个设备一个)我指的是请求的来源,类似于
res.header(“访问控制允许来源”,请求标题(来源)