linux - 为什么 403 禁止在 cookie 接缝工作的 curl 中使用?

标签 linux bash curl cookies

在下面的示例中,您可以看到作为我得出结论的评论的输出。

根据第一个,我说 cookie 正在工作,因为它想将我重定向到 /project

问题

既然我可以看到 cookie 正在工作,为什么我会收到 403 禁止?

user='testtest2@testtest2.com'
pass="a"
url="https://www.sharelatex.com"
zip="$url/project/579ba5e03cd63aa32d8bf922/download/zip"

cd /tmp
rm cookies.txt p.zip
csrf=""

csrf=$(curl -s -k --cookie-jar cookies.txt $url/login | perl -lne 'print $1 if /csrfToken = \"(.+?)\"/')

echo $csrf
cat cookies.txt

d="email=$user&password=$pass&_csrf=$csrf"

clear

curl -s -v -k -L --cookie cookies.txt -d $d $url/login


# * Connection #0 to host www.sharelatex.com left intact
# {"redir":"/project"}

clear

curl -s -v -k -L --cookie cookies.txt -d $d $url/project

# < HTTP/1.1 403 Forbidden

最佳答案

查看最后一个 login 命令的输出

* Replaced cookie sharelatex_session

因此您需要保存新的 cookie 并使用它。

user='testtest2@testtest2.com'
pass="a"
url="https://www.sharelatex.com"
zip="$url/project/579ba5e03cd63aa32d8bf922/download/zip"

cd /tmp
rm cookies.txt file.zip
csrf=""

csrf=$(curl -s -k --cookie-jar cookies.txt $url/login | perl -lne 'print $1 if /csrfToken = \"(.+?)\"/')

d="email=$user&password=$pass&_csrf=$csrf"

curl -s -v -k -L -c cookies.txt -b cookies.txt -d $d $url/login

curl -s -v -k -L --cookie cookies.txt  $zip -o file.zip
unzip -l file.zip

关于linux - 为什么 403 禁止在 cookie 接缝工作的 curl 中使用?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38666704/

相关文章:

php-系统函数-/usr/bin/echo Hello : No such file or directory

bash - 未找到 expr 命令?为什么没有找到 expr 而其他的都找到了?

php - 如何在 PHP 中从 .pfx 证书获取 key.pem 和 crt.pem

PHP cURL,读取远程文件并将内容写入本地文件

ssl - curl:为什么我得到空响应?

php - UTF-8贯穿始终

c - 向 Linux 中的所有线程广播信号

sql - 具有多行和单行的文本文件中的行数

Linux、BASH 带有特殊字符的启动命令

linux - 提取音频,再次操作和合并