Я недавно начал использовать apigee proxy. Пожалуйста, не блокируйте меня.Я использую почтальон для публикации данных в прокси.Я назначил политику извлечения для извлечения некоторых значений из данных json, таких как скорость, широта, долгота и т. Д. Затем я использовал политику назначения для преобразования скорости в gpsspeed и т. Д. В соответствии с требованиями клиента.После этого я использую политику javascript для вывода, если скорость выше> 50, то высокая или низкая.Я привожу пример данных.Теперь я хочу переслать результирующие данные в другой api. Может быть, все, что apigee предлагает для тестирования. Я хочу видеть данные в результирующем api.Я использовал политику вызова сервисов для отправки данных на другой URL.Я прилагаю политику.
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<ServiceCallout name="ServiceCallout-GeocodingRequest1">
<DisplayName>Inline request message</DisplayName>
<Request variable="callAnotherService">
<Set>
<Payload contentType="application/json">
{response.content} // reading data from javascript policy
</Payload>
</Set>
</Request>
<Response>CalloutResponse</Response>
<Timeout>30000</Timeout>
<HTTPTargetConnection>
<URL>http://httpbin.org/anything</URL>
</HTTPTargetConnection>
Я прикрепил политику javascript перед ней.Я прилагаю политику.
var content = context.getVariable("response.content") //read the response
content = JSON.parse(content); //parse into an object
if (content.speed > 50) { //apply the condition
content.speed = "high";
}
else {
content.speed = "low";
}
context.setVariable("response.content", JSON.stringify(content)); //set it
back on the response
Может кто-нибудь помочь мне, как я могу переслать данные в другой API?Правильна ли моя процедура? Является ли процедура извлечения переменных из политики сценариев Java верной? Пожалуйста, наставьте меня.