Я хочу отобразить следующее изображение Base64 внутри тела электронной почты приложений логики.
{
"image": [
"data:image/jpeg;base64,/9j/4AAQSkZJRgA..."
"data:image/jpeg;base64,/9j/4AAQSkZJRgA..."
"data:image/jpeg;base64,/9j/4AAQSkZJRgA..."
"data:image/jpeg;base64,/9j/4AAQSkZJRgA..."
]
}
Внутри setVariable 2 — добавляю все детали
Для изображения я использую элементы («For_each»), но я получаю только изображение, когда отправляю форму.
Дайте мне знать, если у кого-то есть идея отображать несколько изображений в электронной почте.
<img src=@{items('For_each')} />
<h1 style = "text-alig:center">Demo</h1>
<strong><h3>Location</h3></strong>
<hr/>
<strong>Lat:</strong> @{triggerBody()?['latitude']}
<strong>Lon:</strong> @{triggerBody()?['longitude']}
<br />
<br />
<strong><h3>capture On:</h3></strong>
<hr/>
@{triggerBody()?['catpuredon']}
<br />
<br />
<strong><h3>my Car</h3></strong>
<hr/>
@{triggerBody()?['carphoto']}
<br />
<br />
<strong><h3>Car Photos:</h3></strong>
<hr />
<br />
<img src=@{items('For_each')} />
Добавлено Новое изображение после исправления
Обновлено с телом электронной почты.
Я бы сказал, что вам нужно перебрать каждое изображение в цикле FOR и добавить к строковой переменной, а не просто установить переменную. Если вы думаете, что делаете это, можете ли вы показать нам содержание шага Set variable?
В дополнение к тому, что сказал @Skin, я встроил каждый элемент в тег <img> и добавил его к строковой переменной, которая затем добавляется в тело письма. Ниже показано, как выглядит мой поток.
В качестве образца я сделал одно и то же изображение 4 раза, и ниже приведены результаты, которые я получил по почте.
Ниже приведен полный код моего приложения логики.
{
"image": {
"definition": {
"$schema": "https://schema.management.azure.com/providers/Microsoft.Logic/schemas/2016-06-01/workflowdefinition.json#",
"actions": {
"For_each": {
"actions": {
"Append_to_string_variable": {
"inputs": {
"name": "StringVar",
"value": "@concat('<img src=',item(),'>')"
},
"runAfter": {},
"type": "AppendToStringVariable"
}
},
"foreach": "@variables('ArrayVar')",
"runAfter": {
"Initialize_variable_-_Image_String": [
"Succeeded"
]
},
"type": "Foreach"
},
"Initialize_variable_-_Image_String": {
"inputs": {
"variables": [
{
"name": "StringVar",
"type": "string"
}
]
},
"runAfter": {
"Initialize_variable_-_Images_Array": [
"Succeeded"
]
},
"type": "InitializeVariable"
},
"Initialize_variable_-_Images_Array": {
"inputs": {
"variables": [
{
"name": "ArrayVar",
"type": "array",
"value": [
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA...",
"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgA..."
]
}
]
},
"runAfter": {},
"type": "InitializeVariable"
},
"Send_an_email_(V2)": {
"inputs": {
"body": {
"Body": "<p>@{variables('StringVar')}</p>",
"Importance": "Normal",
"Subject": "Images",
"To": "xxx"
},
"host": {
"connection": {
"name": "@parameters('$connections')['office365']['connectionId']"
}
},
"method": "post",
"path": "/v2/Mail"
},
"runAfter": {
"For_each": [
"Succeeded"
]
},
"type": "ApiConnection"
}
},
"contentVersion": "1.0.0.0",
"outputs": {},
"parameters": {
"$connections": {
"defaultValue": {},
"type": "Object"
}
},
"triggers": {
"manual": {
"inputs": {
"schema": {}
},
"kind": "Http",
"type": "Request"
}
}
},
"parameters": {
"$connections": {
"value": {
"office365": {
"connectionId": "/subscriptions/xxx/resourceGroups/xxx/providers/Microsoft.Web/connections/office365",
"connectionName": "office365",
"id": "/subscriptions/xxx/providers/Microsoft.Web/locations/eastus/managedApis/office365"
}
}
}
}
}
}
Спасибо за помощь, Света, сработало. В блоке кода «Initialize_variable_-_Images_Array» я изо всех сил пытался понять, показали ли вы пример жестко закодированных изображений dataUrl, но каким-то образом я попытался добавить массив изображений из «когда получен HTTP-запрос», и теперь я получаю несколько изображения в теле письма. Еще раз спасибо за быструю помощь.
Вы не показали нам, как вы помещаете это в тело письма. Вы не можете просто назвать все элементы, вам нужно будет создать HTML.