[PYTHON] Das Qiitadon-Symbol darf nicht von der API geändert werden

Inhalt des Problems

Ich habe das Symbol mit mastodon.py geändert.

from mastodon import Mastodon

mastodon = Mastodon(
    access_token = "your_access_token",
    api_base_url = 'https://qiitadon.com'
)

mastodon.account_update_credentials(avatar="path_to_image.xxx")

Es wurde beim ersten Mal wiedergegeben, aber es wurde nicht wiedergegeben, als ich das Bild geändert und erneut ausgeführt habe. ** ** **

Grund

Ich weiß nicht, ob es sich um eine Qiitadon- oder Mastodon-Spezifikation handelt, aber ob ich das Symbol in der API ändere

Das heißt, wenn Sie das Symbol in ein neues ändern möchten, müssen Sie es mit einem Bildnamen hochladen, den Sie noch nie zuvor verwendet haben.

Im Fall von mastodon.py sieht es so aus:

avatar_file_name = "mastodonpyupload_" + mimetypes.guess_extension(avatar_mime_type)

Es ist wahrscheinlich, dass es ab dem zweiten Mal nicht wie erwartet wiedergegeben wurde, da entschieden wurde, unabhängig vom lokalen Bildnamen.

Gegenmaßnahmen

Klicken Sie direkt auf die Mastodon-API. Verwenden Sie zum Hochladen den lokalen Bildnamen. Wenn Sie ein neues Bild wiedergeben möchten, verwenden Sie einen Bildnamen, den Sie noch nie zuvor verwendet haben.

import requests

url     = "https://qiitadon.com/api/v1/accounts/update_credentials"
token   = "your_access_token"
headers = {"Authorization": "Bearer " + token}

file_name = "path_to_image.xxx"
file_data = open(file_name, "rb").read()
mime_type = "image/xxx"
files     = {"avatar": (file_name, file_data, mime_type)}

requests.patch(url, headers=headers, files=files)

Wenn die Bibliothek einer anderen Sprache dieses Problem nicht hat, kann sie verwendet werden.

Recommended Posts

Das Qiitadon-Symbol darf nicht von der API geändert werden
Djangos auto_now wird möglicherweise nicht aktualisiert
[django] Wenn das geänderte Modell aktualisiert wird und wenn es nicht aktualisiert wird
PyQtGraph ist möglicherweise nicht im Interpreter verfügbar.
Ein Hinweis, dass pyOSC int64 nicht erhalten hat