Bash 使用HTTP请求在privnote.com中创建便笺

Bash 使用HTTP请求在privnote.com中创建便笺,bash,curl,httprequest,Bash,Curl,Httprequest,我正在尝试使用一个简单的HTTP请求(使用cURL)从文件的内容创建一个注释。我唯一能找到的关于这方面的信息是,所以我用它作为参考,但到目前为止没有运气 到目前为止,我得到的是: curl -v \ -H "Host: privnote.com" \ -H "Connection: keep-alive" \ -H "Content-Length: 153" \ -H "Origin: https://privnote.com" \ -H "X-Reque

我正在尝试使用一个简单的HTTP请求(使用cURL)从文件的内容创建一个注释。我唯一能找到的关于这方面的信息是,所以我用它作为参考,但到目前为止没有运气

到目前为止,我得到的是:

curl -v \
    -H "Host: privnote.com" \
    -H "Connection: keep-alive" \
    -H "Content-Length: 153" \
    -H "Origin: https://privnote.com" \
    -H "X-Requested-With: XMLHttpRequest" \
    -H "User-Agent: privnote-cli/0.1.0 (https://github.com/nonrational/privnote-cli)" \
    -H "Content-Type: application/x-www-form-urlencoded" \
    -H "Accept: */*" \
    -H "DNT: 1" \
    -H "Referer: https://privnote.com/" \
    -H "Accept-Encoding: gzip, deflate, br" \
    -H "Accept-Language: en-GB,en-US;q=0.8,en;q=0.6" \
    -X POST \
    --data-binary "@pst-np-v1.pem" \
    "https://privnote.com/legacy/"
当我执行该请求时,我得到
500内部服务器错误
。有什么办法让它工作吗


最终目标是:我尝试将文件内容作为注释上传,然后通过命令行获取URL。

需要使用以下参数在
application/x-www-form-urlencoded
中发送内容:

  • 资料
  • 有手动通行证吗
  • 持续时间
  • 别问了
  • 数据类型
  • 通过电子邮件通知
  • 通知
数据
参数包含用AES 256 CBC加密的消息,密码长度为9个字符

password=siK2TDfjC
数据=$(cat pst-np-v1.pem | openssl enc-e-aes-256-cbc-k$密码-a-md md5)
旋度-v'https://privnote.com/' \
-H'X-request-With:XMLHttpRequest'\
--数据urlencode“数据=$data”\
--数据“has\u manual\u pass=false&duration\u hours=0&dont\u ask=false&data\u type=T¬ify\u email=¬ify\u ref=”
JSON字段
note_link
可以使用
jq
JSON解析器提取,并连接到
\$password
以获得完整的URI

完整示例:

password=siK2TDfjC
message=“一张不那么秘密的便条”
数据=$(echo“$message”| openssl enc-e-aes-256-cbc-k$password-a-md md5)
注意_link=$(curl-s'https://privnote.com/' \
-H'X-request-With:XMLHttpRequest'\
--数据urlencode“数据=$data”\
--数据“has\u manual\u pass=false&duration\u hours=0&dont\u ask=false&data\u type=T¬ify\u email=¬ify\u ref=”\
|jq-r--arg arg$password'。注意_link+“#”+$arg')
echo“便笺URL为$note\u链接”

哇,这太棒了,但问题是,密码需要随机生成吗?或者每次都是一样的?我想我可以这样做:
head/dev/uradom | tr-dc A-Za-z0-9 | head-c9
,随机生成一个9位密码。是的,它可以是一样的,服务器似乎没有保存已经使用的密码缓存,如果安装了这些工具,还可以使用
pwgen-n19
makepasswd--maxchars=9