【发布时间】:2022-01-22 18:26:32
【问题描述】:
我创建了简单的流程,我在 url 中发送 id,如下所示:
路径:
/api/courses/find/{id}
结果:
http://localhost:88/api/courses/find/60ee9678070e104b2c57be46
然后我将此 id 部分设置为有效负载。我接下来要做的是调用 REST API,将此有效负载插入 URL,但无论我尝试什么,它都不会返回正确的 JSON。
这是我需要的样子:
路径:
http://localhost:1234/api/courses/find/60ee9678070e104b2c57be46
转换消息的结果:
%dw 2.0
output application/json
---
{
isPublished: payload.isPublished,
tags: payload.tags map ( tag , indexOfTag ) -> tag,
"_id": payload."_id",
dishName: payload.dishName,
category: payload.category,
author: payload.author,
ingredients: payload.ingredients map ( ingredient , indexOfIngredient ) -> {
"_id": ingredient."_id",
quantity: ingredient.quantity,
unit: ingredient.unit,
description: ingredient.description
},
cookingTime: payload.cookingTime,
sourceUrl: payload.sourceUrl,
imageUrl: payload.imageUrl,
price: payload.price,
date: payload.date,
"__v": payload."__v",
id: payload."_id"
}
我尝试通过将 id 放入 URI 参数来做到这一点,但它是 URL 的一部分而不是 URI 参数,因此不起作用,类似这样的事情也是如此:
HTTP 请求的请求路径:
/api/courses/find/#[payload]
有谁知道我是否可以像这样在 URL 中插入有效负载?我在文档中找不到任何关于它的信息。
感谢您的帮助!
编辑:您能否告诉我,如果我想为每个方法 GET、POST、PUT、DELETE 创建路径,它是否具有相同的侦听器路径 /api/courses 并且仅在不同的 HTTP 请求元素之后(例如 @987654327 @ 使用 POST 方法)还是我必须为每一个都更改它?我想知道,因为我找不到它是否会知道它应该根据此流中的 HTTP 请求元素选择流,或者它只是选择具有该路径 /api/courses 的第一个。
【问题讨论】:
-
请将HTTP请求操作和配置添加为XML。
-
关于在“EDIT:”之后添加的问题,它看起来是一个新的独立问题。请为它发布一个单独的问题。
-
“我试图通过将 id 放入 URI 参数来做到这一点,但它是 URL 的一部分而不是 URI 参数” URI 参数作为 URL 的一部分传递。您指的是查询参数吗?
标签: mule mulesoft anypoint-studio