Невозможно сохранить очень простую пачку пациентов - PullRequest
0 голосов
/ 04 января 2019

Я пытаюсь сохранить этот очень простой набор пациентов для https://vonk.fire.ly/Bundle,, выполняя PUT с использованием Почтальона, однако я не могу заставить его работать. Когда я просто копирую данные внутреннего ресурса Patient и выполняю PUT непосредственно в конечную точку https://vonk.fire.ly/Patient, это работает просто отлично (например - я только что сделал это с этим URL https://vonk.fire.ly/Patient/deb7338181).

Может кто-нибудь, пожалуйста, укажите мне, что именно здесь происходит в этом комплекте ??

{
"resourceType": "Bundle",
"id": "b6ec685a-26a2-4bb3-814b-841fba6a6edb",
"meta": {
    "lastUpdated": "2018-05-29T23:45:32Z"
}
"type": "transaction",
"entry": [
    {
        "resource": {
            "resourceType": "Patient",
            "id": "deb73381811",
            "text": {
                "status": "generated",
                "div": "<div xmlns=\"http://www.w3.org/1999/xhtml\">Some narrative</div>"
            },
            "active": true,
            "name": [
                {
                    "use": "official",
                    "family": "Chalmers1",
                    "given": [
                        "Peter1",
                        "James1"
                    ]
                }
            ],
            "gender": "male",
            "birthDate": "1974-12-25"
        },
        "request": {
            "method": "POST",
            "url": "Patient"
        }
    }
]
}

1 Ответ

0 голосов
/ 05 января 2019

Если вы хотите отправить транзакцию на сервер FHIR, вы выполняете POST пакета транзакций до конечной точки, как вы упомянули в своем комментарии. В рамках транзакции для каждой записи необходимо установить часть запроса в соответствии с желаемым типом запроса.

Для вашей записи пациента вы попросили сервер выполнить POST, что означает создание с назначенным сервером идентификатором. Если вы хотите, чтобы сервер использовал ваш собственный идентификатор, вы должны указать ему выполнить PUT, который обычно является обновлением, но также может использоваться для создания с вашим собственным идентификатором. Синтаксис запроса на обновление:

"request": {
            "method": "PUT",
            "url": "Patient/<my_patient_id>"
           }

Обратите внимание, что, хотя это действительный запрос FHIR и Vonk разрешает его, не все серверы будут.

...