#42 Upload fail on peertube when there is only one tag

Затворени
отворен преди 4 години от LecygneNoir · 3 коментара
Притежател

Hello,

A bug was found by @Zykino , when uploading a video to Peertube, if there is only one tag, the upload fail whith an error 400

Error from Peertube logs is:

  "path": "/api/v1/videos/upload",
  "err": {
    "tags": {
      "value": "Factory Builder",
      "msg": "Should have correct tags",
      "param": "tags",
      "location": "body"
    }
  }
}

If we add any other tags (eg something like "Factory Builder, test") it works.

If we upload the video through the web interface with only one tags, it also works.

Note sure at the moment if this is a prismedia or Peertube's API bug, I'll need to dig it.

To reproduce:

 ./prismedia_upload.py --file="file.mp4"  -t "Factory Builder" --platform=peertube
Hello, A bug was found by @Zykino , when uploading a video to Peertube, if there is only one tag, the upload fail whith an error 400 Error from Peertube logs is: ``` "path": "/api/v1/videos/upload", "err": { "tags": { "value": "Factory Builder", "msg": "Should have correct tags", "param": "tags", "location": "body" } } } ``` If we add any other tags (eg something like `"Factory Builder, test"`) it works. If we upload the video through the web interface with only one tags, it also works. Note sure at the moment if this is a prismedia or Peertube's API bug, I'll need to dig it. To reproduce: ``` ./prismedia_upload.py --file="file.mp4" -t "Factory Builder" --platform=peertube ```
LecygneNoir added the
bug
label преди 4 години
Zykino коментира преди 4 години
Участник

Following the official doc there should be between 1 and 5 items in an array. According to the log you provided there "value" is a string instead.

I suppose this https://git.lecygnenoir.info/LecygneNoir/prismedia/src/tag/v0.7.0/lib/pt_upload.py#L207 create a string at first and then an array if we add more tag. I do not know how to fix it right now.

Following the [official doc](https://docs.joinpeertube.org/api-rest-reference.html#tag/Video/paths/~1videos~1upload/post) there should be between 1 and 5 items in an *array*. According to the log you provided there `"value"` is a string instead. I suppose this https://git.lecygnenoir.info/LecygneNoir/prismedia/src/tag/v0.7.0/lib/pt_upload.py#L207 create a string at first and then an array if we add more tag. I do not know how to fix it right now.
Участник
Притежател

Great catch!

It's indeed probably that. I'll dig the library to see how to create an array at first round.

Thanks!

Great catch! It's indeed probably that. I'll dig the library to see how to create an array at first round. Thanks!
Участник
Притежател

Solved by 5dc6c78211

Solved by https://git.lecygnenoir.info/LecygneNoir/prismedia/commit/5dc6c782117c3d04e5098a5cd00191ee3de2a51b
Впишете се за да се присъедините към разговора.
Няма етап
Няма изпълнители
2 участника
Известия
Due Date

No due date set.

Зависимости

This issue currently doesn't have any dependencies.

Зареждане…
Все още няма съдържание.