json.dumps した後に、配列(json_list=[])に入れると、配列自体はjsonではないので、うまくいかない。
配列に入れてからjson.dumpsすると、jsonデータとして扱われる。
import json import requests json_list = [] with open('./data/names.txt') as f: for line in f: json_open = json.loads(line) json_list.append(json_open) json_data = json.dumps(json_list) print(json_data) response = requests.post( "http://httpbin.org/post", data=json_data, headers={'Content-type': 'application/json'} ) print(response.status_code) print(response.text)
これ解決するのに半日以上かかりましたorz…