批量导入Json通过rest api进入Parse.com后端,几乎就在那里

时间:2014-02-04 09:05:22

标签: ios json rest curl parse-platform

晚上好,

我只是通过其余的api快速提问批量导入。我已经尝试了各种方法来自动循环文件并将结果添加到Parse后端但没有成功。一个例子:

curl -X POST \ -H“X-Parse-Application-Id:删除了”\ -H“X-Parse-REST-API-Key:删除了”\ -H“Content-Type:application / json”\ --data'{

"requests": [
  {
    "method": "POST",
    "path": "/1/classes/testnew",
    "body": {
      @Posts.json
    }
  }
]

}' https://api.parse.com/1/batch

在上传.json文件时,我尝试了许多其他Curl命令,并在解析时检查网络选项卡,看起来当您单击上传时,它使用表单multipart命令将数据上传到.json文件中。有没有人知道如何通过cUrl自动将数据从.json文件上传到解析而无需手动执行其他api文档中描述的批处理/个人调用?

任何帮助都会受到重视: - )。

谢谢,

杰拉德

3 个答案:

答案 0 :(得分:0)

似乎解析不提供所需的功能。你仍然可以编写一个小的python脚本快速修复。

{
  "all_players": [
          {
              "score": 1337,
              "playerName": "Sean Plott"
          },
          {
              "score": 1338,
              "playerName": "ZeroCool"
          }]
}
import urllib2
import json
import pprint
def frame_request():
  f=open('hello.json','r')
  data = json.load(f) 
  flag=1;
  req = '{ "requests": ['
  for d in data["all_players"]:
    if flag:
      flag=0
    else:
      req=req+','
    req=req + '{ "method": "POST", "path": "/1/classes/GameScore", "body":' + json.dumps(d) + ' }'
  req=req+']}'
  return req

答案 1 :(得分:0)

使用curl添加-k--insecure命令来处理您的https链接。

Linux支持数据值的单引号,但Windows不支持。如果您来自基于Windows的操作系统,则--data应如下所示:

--data "{sample:\"json-data\"}"

答案 2 :(得分:-1)

在处理大量对象时,值得通过Web界面自动导入批量数据。基本思路是自动登录,单击导入按钮,然后将文件上传到Parse。

使用REST API的问题在于它会破坏大型文件,因为在逐个上传对象时很容易超过请求/秒限制。

我编写了PhantomJS脚本,可以自动执行批量导入。运行它的脚本和说明可在此处获取:https://gist.github.com/yanirs/eddedf152f42c1ee02b2

此处讨论了我尝试过的其他解决方案:http://yanirseroussi.com/2015/01/15/automating-parse-com-bulk-data-imports/