首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Back4app上传对象问题

Back4app上传对象问题
EN

Stack Overflow用户
提问于 2020-10-19 18:08:53
回答 1查看 176关注 0票数 0

我正在尝试通过back4app为类sound创建一个对象

我有的问题是无法上传文件。

使用的代码:

代码语言:javascript
复制
import requests

headers = {
    "X-Parse-Application-Id": "hidden",
    "X-Parse-REST-API-Key": "hidden",
}


data = {
    "audio": {
        "__type": open("a.mp3", 'rb'),
        "name": "a.mp3"

    },
    "displayText": "test"
}


def main(url):
    with requests.Session() as req:
        req.headers.update(headers)
        r = req.post(url, data=data)
        print(r.text)


main("https://parseapi.back4app.com/classes/sounds")

输出:

代码语言:javascript
复制
{"code":111,"error":"schema mismatch for sounds.audio; expected File but got Array"}

EN

回答 1

Stack Overflow用户

发布于 2020-10-19 23:43:57

您首先需要上传文件:

代码语言:javascript
复制
import json,httplib
connection = httplib.HTTPSConnection('parseapi.back4app.com', 443)
connection.connect()
connection.request('POST', '/files/a.mp3', open('a.mp3', 'rb').read(), {
       "X-Parse-Application-Id": "${APPLICATION_ID}",
       "X-Parse-REST-API-Key": "${REST_API_KEY}",
       "Content-Type": "audio/mpeg"
     })
result = json.loads(connection.getresponse().read())

然后创建对象:

代码语言:javascript
复制
connection.request('POST', '/classes/sounds', json.dumps({
       "displayText": "test",
       "audio": {
         "name": result["name"],
         "url:": result["url"],
         "__type": "File"
       }
     }), {
       "X-Parse-Application-Id": "${APPLICATION_ID}",
       "X-Parse-REST-API-Key": "${REST_API_KEY}",
       "Content-Type": "application/json"
     })
connection.getresponse().read()
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64425216

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档