Визуализация почтальона - как отобразить URL изображения в простом теге HTML img - PullRequest
0 голосов
/ 05 августа 2020

На рабочем столе Postman я пытаюсь визуализировать изображение, возвращенное поиском изображений Bing. (Сам запрос работает.)

У меня есть следующий ответ от запроса Bing API, отформатированный как JSON в Desktop Postman:

{
    "_type": "Images",
    "instrumentation": {
        "_type": "ResponseInstrumentation"
    },
    "readLink": "https://arama.cognitiveservices.azure.com/api/v7/images/search?q=jfk",
    "webSearchUrl": "https://www.bing.com/images/search?q=jfk&FORM=OIIARP",
    "queryContext": {
        "originalQuery": "jfk",
        "alterationDisplayQuery": "jfk",
        "alterationOverrideQuery": "+jfk",
        "alterationMethod": "AM_JustChangeIt",
        "alterationType": "CombinedAlterations"
    },
    "totalEstimatedMatches": 910,
    "nextOffset": 1,
    "currentOffset": 0,
    "value": [
        {
            "webSearchUrl": "https://www.bing.com/images/search?view=detailv2&FORM=OIIRPO&q=jfk&id=23716A341D61409DE7D5D19724937DD5340BBB06&simid=608036166471451494",
            "name": "Reactions to the assassination of John F. Kennedy - Wikipedia",
            "thumbnailUrl": "https://tse1.mm.bing.net/th?id=OIP.9dNMVRmk1a3edFYrwzcFeQHaIi&pid=Api",
            "isFamilyFriendly": true,
            "contentUrl": "https://upload.wikimedia.org/wikipedia/commons/7/70/Jfk2.jpg",
        }
    ]
}

В Tests tab, у меня есть следующий сценарий:

var template = `<img src="{{res.value[0].contentUrl}}">`;
pm.visualizer.set(template, {
    res: pm.response.json()
});

Это приводит к следующей ошибке, отображаемой на панели Visualizer :

Ошибка синтаксического анализа в строке 1 :

Я отдельно протестировал ссылку res.value[0].contentUrl с помощью онлайн-скрипта w3schools TryIt, и я знаю, что он работает и правильно выдает соответствующий URL.

Что я здесь делаю не так , и если бы это были вы, как бы вы go отладили его? Спасибо.

1 Ответ

1 голос
/ 05 августа 2020

Изображение должно отображаться примерно так:

let template = `
<img src="{{res.value.0.contentUrl}}">
`

pm.visualizer.set(template, { 
    res: pm.response.json()
})

Я высмеял ответ здесь, но он будет работать таким же образом.

enter image description here

The way handlebars handle looping/accessing array objects is different so [0] wouldn't work here.

You could also use this to do the same thing:

let template = `
{{#each res.value}}
image {{/ each}} `
...