«Ошибка»: «Ошибка анализа JSON - Ожидаемое значение: строка 1, столбец 1 (символ 0)» Как это исправить - PullRequest
0 голосов
/ 23 октября 2018

Я пишу скрипт для отправки запросов из разных веб-сервисов.У меня возникли проблемы при публикации данных из данных JSON ниже.Когда я запускаю функцию patient_create_bill(), я получаю журналы ниже из ответа.

RESPONSE IS!!!!!
{'Error': 'JSON parse error - Expecting value: line 1 column 1 (char 0)'}
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): 0.0.0.0:9000
DEBUG:urllib3.connectionpool:http://0.0.0.0:9000 "POST /api/bill/patient/bills/ HTTP/1.1" 400 72
Creating Patient Bill .....................................

Я пытался создать POST для почтового служащего, я получаю ответ 201, означающий, что полезная нагрузка в порядкев этом нет ничего плохого.enter image description here

Это моя POST полезная нагрузка.
У меня есть отдельный файл с именем mocks.py, содержащий PATIENT_BILL_CREATE_PAYLOAD

PATIENT_BILL_CREATE_PAYLOAD = {
    "bill_items": [{
        "item": "Syringes",
        "qty": 2,
        "description": "Medicorp syringes"
    }],
    "bill_services": [{
        "service": "Diagnosis",
        "service_type": "1",
        "duration": 5,
        "description": "diagnosis"
    }],
    "client": "Sandra Hernandez"
}

Это функция
Я импортировал PATIENT_BILL_CREATE_PAYLOAD и использую ее в этой функции.

def patient_create_bill(headers):
    """This function uses login creds provided and returns token plus logged in user data."""
    url = "http://0.0.0.0:9000/api/bill/patient/bills/"
    data = PATIENT_BILL_CREATE_PAYLOAD
    res = requests.post(url, data=data, headers=headers)
    res_data = res.json()
    print("Creating Patient Bill .....................................\n")
    return res_data

Ответы [ 2 ]

0 голосов
/ 24 октября 2018

Моя ошибка произошла из-за использования данных вместо json в запросе, а также указал заголовок Content-Type как `application / json: -).

0 голосов
/ 23 октября 2018

Этот журнал сообщает, что вы не получили тело в ответе HTTP (HTTP CODE 400): DEBUG:urllib3.connectionpool:http://0.0.0.0:9000 "POST /api/bill/patient/bills/ HTTP/1.1" 400 72

Python пытается проанализировать строку emtry.Вы можете запустить это:

import json
json.loads('')

И этот код будет повышаться:

json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)

Я думаю, вы должны проверить конечную точку URL для вызова.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...