Home > Backend Development > PHP Tutorial > 跨域 - php通过curl设置客户端cookie

跨域 - php通过curl设置客户端cookie

WBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWBOYWB
Release: 2016-06-06 20:34:16
Original
895 people have browsed it

在做SSO跨域登录时,SSO中心回返回一个认证的url,套在<script></script>标签中直接请求即可,
但我想换个思路,返回url后,通过后端(PHP),去请求这个这url,这个url是认证成功了,但由于跨域的问题,无法在客户端设置cookie,求思路!

回复内容:

在做SSO跨域登录时,SSO中心回返回一个认证的url,套在<script></script>标签中直接请求即可,
但我想换个思路,返回url后,通过后端(PHP),去请求这个这url,这个url是认证成功了,但由于跨域的问题,无法在客户端设置cookie,求思路!

无解.
SSO的核心就是在请求对方服务器在认证成功之后,由对方写入对方域下的Cookie,以完成登陆.
可你把这一步在服务器端做了, 你肯定不能向浏览器下发不属于你自己域下的Cookie.

后端php在curl请求的时候,是可以加cookie头信息的,使用方法一楼已经给出了,但是后端php要想取得浏览器端cookie的内容,还是得靠前端的js请求(确切说是jsonp,也就是你说的script标签)来获取浏览器端的cookie的具体内容,然后在组织一个curl请求发送给SSO服务器端。

<code>$header = array (  
    ............................
     );
curl_setopt($ch, CURLOPT_HTTPHEADER, $header); 
</code>
Copy after login

后端认证成功后是否会做跳转 如果会跳转 则把参数带过去 在前端用js根据参数进行参数安全验证后设置cookie

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Latest Issues
php data acquisition?
From 1970-01-01 08:00:00
0
0
0
PHP extension intl
From 1970-01-01 08:00:00
0
0
0
How to learn php well
From 1970-01-01 08:00:00
0
0
0
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template