程序问答   发布时间:2022-06-02  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了REST API:如何在 python 循环中从(JSON)文件中发布多个条目?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

如何解决REST API:如何在 python 循环中从(JSON)文件中发布多个条目??

开发过程中遇到REST API:如何在 python 循环中从(JSON)文件中发布多个条目?的问题如何解决?下面主要结合日常开发的经验,给出你关于REST API:如何在 python 循环中从(JSON)文件中发布多个条目?的解决方法建议,希望对你解决REST API:如何在 python 循环中从(JSON)文件中发布多个条目?有所启发或帮助;

我是 Python 和 REST 领域的新手。

我的 Python 脚本

import Json
import requests

with open(r"create-multiple-Users.Json","r") as payload:
    data = Json.load(payload)
    Json_data = Json.dumps(data,indent=2)
    headers = {'content-type': 'application/Json; charset=utf-8'}

    for i in range(len(data)):
        r = requests.post('http://localhost:3000/users',data=Json_data,headers=headers)

模拟 API 服务器:https://github.com/typicode/json-server .

条目文件:“info.Json”和端点: /users 最初只有一个用户。

{
  "users": [
    {
      "ID": 1,"name": "John","job": "Wong"
    }
   ]
}

问题:

  • 从只有一个用户的文件进行 POST 工作完美。新用户按预期作为对象附加到 info.Json。

  • 但是当尝试 POST 时,假设有 3 个用户来自下面的文件“create-multiple-Users.Json”,然后用户将作为列表附加到“info.Json”对象3次(即对象/迭代次数)

    [ { “身份证”:10, "name": "珍妮特",“工作”:“织布工” },{ “身份证”:12, "name": "Kwonn","job": "Wingtsel" },{ “身份证”:13, "name": "夏娃",“工作”:“霍尔特” } ]

我希望将用户作为单独的对象一个一个地附加。

也许我把循环过于简单化了? 非常感谢任何帮助。

PS:抱歉,我无法格式化多用户文件;(

解决方法

对 for 迭代进行简单的更改会有所帮助:

import json
import requests

with open(r"create-multiple-Users.json","r") as payload:
    data = json.load(payload)
    json_data = json.dumps(data,indent=2)
    headers = {'content-type': 'application/json; charset=utf-8'}

    for row in data: # Change this to iterate the json list
        r = requests.post('http://localhost:3000/users',data=row,headers=headers) # Send row that is a single object
,

感谢 "enriqueojedalara"

我通过使用提示找到了解决方案
import json
import requests

with open(r"create-multiple-Users.json","r") as payload:
    data = json.load(payload) #<class 'list'>
    headers = {'content-type': 'application/json; charset=utf-8'}
    print("Total number of objects: ",len(data))
    for i in range(len(data)):
        data_new = json.dumps(data[i])
        r = requests.post('http://localhost:3000/users',data=data_new,headers=headers)
        print("Item#",i,"added"," -> ",data_new)

大佬总结

以上是大佬教程为你收集整理的REST API:如何在 python 循环中从(JSON)文件中发布多个条目?全部内容,希望文章能够帮你解决REST API:如何在 python 循环中从(JSON)文件中发布多个条目?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。
标签: