Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/239.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
我的cURL请求不会在我的PHP页面上创建cookie_Php_Curl_Cookies - Fatal编程技术网

我的cURL请求不会在我的PHP页面上创建cookie

我的cURL请求不会在我的PHP页面上创建cookie,php,curl,cookies,Php,Curl,Cookies,我现在从卷曲开始,遇到了一个问题: 我正在尝试对另一个域中的页面进行简单请求 此页面包含以下用于创建简单cookie的内容 test.php 首先,我通过ajax请求此页面,如下所示: <!-- Simple ajax request --> <script src="https://code.jquery.com/jquery-3.4.1.min.js"></script> <!-- Jquery --> <script>

我现在从卷曲开始,遇到了一个问题: 我正在尝试对另一个域中的页面进行简单请求

此页面包含以下用于创建简单cookie的内容

test.php

首先,我通过ajax请求此页面,如下所示:

<!-- Simple ajax request -->
<script src="https://code.jquery.com/jquery-3.4.1.min.js"></script> <!-- Jquery -->

<script>
    $.ajax({
        url: 'https://example.com/test/test.php',
        type: 'GET',
        dataType: 'jsonp'
    });
</script>

当我运行上面的代码时,cookie通常是在我的浏览器上创建的

然后,我尝试使用以下代码对cURL执行相同的任务:

<?php

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://example.com/test/test.php');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_exec($ch);
    curl_close($ch);

?>
但当我执行上述代码时,什么也没有发生,因此没有返回错误消息,我的疑问来了:

cURL和AJAX之间的请求有什么区别?它们有相同的用途吗?何时使用一个,何时使用另一个?为什么没有创建cookie?这是代码出了问题还是curl的一个特定特性

我希望我的问题已经很清楚了,因为我正在开始一些概念对我来说还不是很清楚,谢谢

cURL和AJAX之间的请求有什么区别

cURL的使用方式允许您从服务器上运行的PHP程序发出HTTP请求

Ajax是一个用于从浏览器中运行的JavaScript发出HTTP请求的术语

何时使用一个,何时使用另一个

当浏览器需要与URL通信时,请使用Ajax。当服务器需要与URL通信时,请使用PHP

为什么没有创建cookie

因为浏览器没有发出HTTP请求,所以它没有得到带有Set Cookie头的HTTP响应

<?php

    $ch = curl_init();
    curl_setopt($ch, CURLOPT_URL, 'https://example.com/test/test.php');
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_exec($ch);
    curl_close($ch);

?>