gpt4 book ai didi

java - 是否有可能(以及如何)改变 G-WAN 处理请求的方式?

转载 作者:数据小太阳 更新时间:2023-10-29 08:07:26 24 4
gpt4 key购买 nike

今天,G-WAN 像这样处理请求(使用 loan.java servlet 的示例):

localhost/?loan.java&name=Eva&amount=100000&term=5&rate=4.2

特定的处理程序(或者更好的 G-WAN 交换机)是否可以像这样处理请求:

localhost/loan.java?name=Eva&amount=100000&term=5&rate=4.2

哪里:

a) 在 servlet 名称但在第一个参数 之前没有“?”字符,并且,

b)&”字符不是放在第一个参数之前而是放在第二个参数之前,然后是第三个,第四个,(等等)参数。

这样的处理程序(或者更好的 G-WAN 交换机)将使 G-WAN 与无数代码(Go、Java、Mono、NodeJS、PHP、Ruby 等)兼容用于创建 Web 应用程序和网站,如今开发人员不得不重写这些应用程序和网站,以便简单地与 G-WAN 一起使用并受益于其高性能、可扩展性和安全性。

注意:以前的答案从来没有回答过另一个贡献者的问题:“如何删除“”字符”并且 init.c 代码没有提供删除 QUERY_CHAR 的方法但是:

a) 只能从字符集中选择:- _ 。 ! ~ * ' ( ) 和,

b) 不要放置“?”以及上面需要的正确位置的“&”字符。

所以,我希望我的问题更清楚。

如果需要钱,需要支付给 G-WAN 开发人员的价格是多少才能获得这样的处理程序(或者更好的 G-WAN 交换机)与标准 G-WAN发布以像所有其他 Web 服务器一样处理请求,即使使用正则表达式代码会稍微减慢 G-WAN(如果有的话)?

提前感谢您提供了一种方法来实现对这个卓越的 Web 应用程序服务器的这种必要的增强。

最佳答案

G-WAN 上有这样一个Connection Handler 的例子website .您可以在 G-WAN 处理请求之前/期间/之后根据需要重写请求。

在网站示例中,将第 6 行替换为:

char *p = strstr(read_xbuf->ptr, ".java?"); 
if(p)
{
char *b = p; while(*b != '/') b--; // find script name
memmove(b + 1, b, p + sizeof(".java?") - (b + 2)); // make room
b[1] = '?'; // add leading '?'
}

这将完成您想要的要求。如果您对该代码有疑问,请在 gwan.ch 给我们写信。

请将符合您需求的答案标记为“已接受”。

关于java - 是否有可能(以及如何)改变 G-WAN 处理请求的方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36022913/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com