我需要重定向到另一个网址。我使用nodered来请求一个url,然后获取用户名和密码,在cloudant数据库中检查它们,并且在确认它们存在之后,我需要重定向到另一个/ home。 是否有重定向的节点?我尝试使用http请求节点,但它只是在json或二进制中获取响应而不重定向url。如何在nodered中重定向?
答案 0 :(得分:5)
要触发重定向,您需要做两件事:
location
标头设置为要重定向到的网址。参考HTTP Response
节点的帮助,您可以直接在HTTP响应节点中设置状态代码,也可以在消息上设置msg.statusCode
以传递节点。
您设置的值取决于您要执行的重定向类型 - 无论是永久重定向还是临时重定向。
例如,常见的模式是将创建资源的POST请求重定向到新资源的GET请求。这将是使用303
作为状态代码的临时重定向。
This是不同类型的重定向代码的良好参考。
要设置Location
标头,您可以再次在HTTP响应节点中对其进行硬编码,或将其设置在msg.headers
属性下。
例如,如下所示的Function节点可以执行此操作:
msg.statusCode = 303;
msg.headers = {
Location: "https://google.com"
}
delete msg.payload;
return;
您也可以使用Change节点执行相同的操作: