Использование curl для загрузки видео в DailyMotion, все запросы возвращаются успешно, но видео все еще не загружено

Я реализовал следующий скрипт Bash, с помощью которого я пытаюсь загрузить видео в свой аккаунт Dailymotion. Все curl запросы возвращают ответы JSON, перечисленные на официальных страницах документации API. Однако мое видео не отображается в моем аккаунте. Что я здесь не так делаю?

#!/bin/bash


    curl -s --output out.txt --data 'grant_type=password&client_id=<My-ID>&client_secret=<My-Secret>&username=<My-Username>&password=<My-password>&scope=read+write' https://api.dailymotion.com/oauth/token

    var1=$(grep "access_token" out.txt | cut -d: --complement -f1)
    acc_token=$(echo $var1 | cut -d, -f1 | cut -d\" --complement -f1 | cut -d\" -f1)

    curl -s --output out.txt -i https://api.dailymotion.com/file/upload?access_token="$acc_token"        
    upload_url=$(grep "upload_url" out.txt | cut -d: --complement -f1 | cut -d\" --complement -f1 | cut -d\" -f1 | sed 's/\\//g')

    curl -s --output out.txt -F 'file=@/home/zahaib/video.mp4' "$upload_url"
    video_url=$(grep "url" out.txt | cut -d: --complement -f1-10 | cut -d\" --complement -f1 | cut -d# -f1 )

    curl -s --output out.txt -d $video_url https://api.dailymotion.com/me/videos?access_token="$acc_token"
    video_id=$(grep "id" out.txt | cut -d: --complement -f1 | cut -d\" --complement -f1 | cut -d\" -f1 )

    curl -s --output out.txt -d 'title=Vid&channel=sport&tags=was' https://api.dailymotion.com/video/"$video_id"/access_token="$acc_token"
    curl -s --output out.txt -d 'published=true' https://api.dailymotion.com/video/"$video_id"/access_token="$acc_token"

1 ответ

Решение

В вашем скрипте есть две опечатки в последних двух строках:

https://api.dailymotion.com/video/"$video_id"/access_token="$acc_token"

Вместо:

https://api.dailymotion.com/video/"$video_id"/?access_token="$acc_token"

Это прямо там, в вашем out.txt:

{
    "error":{
        "code":501,
        "message":"Invalid method name: POST \/video\/<xid>\/access_token=<redated>.",
        "type":"invalid_method"
    }
}
Другие вопросы по тегам