Ответ 1
Проблема с вашим script заключается в том, что, хотя вы отправляете метод POST, вы добавляете данные в URL-адрес, как если бы это был GET. Вам просто нужно изменить xmlhttp.send(NULL)
на xmlhttp.send(data)
, где data
- это данные запроса, которые вы добавляли к URL gists
до (включая информацию о файле и аутентификации).
Как простой пример, здесь выдержка из a bash script, создающая новый смысл:
#!/usr/bin/env bash
if [ -z "$(git config github.token)" ]
then echo "warning: no api key found, to add follow instructions on github account page."
else echo "attempting to create a new gist using your github authentication..."; fi
SHA=$((curl https://gist.github.com/gists --include \
--data login=$(git config github.user) \
--data token=$(git config github.token) \
--data action_button=private \
--data 'file_ext[gistfile1]=txt' \
--data 'file_contents[gistfile1]=Hello World, this is an example gist!' \
| perl -e 'for(<>){if(/^Location: https?:\/\/gist.github.com\/([0-9a-f]+)/){print $1}}')2>/dev/null)
echo "New example gist created at https://gist.github.com/$SHA"