gpt4 book ai didi

ios - 谷歌应用引擎。 Google 应用引擎将 POST 请求视为 GET

转载 作者:塔克拉玛干 更新时间:2023-11-02 20:24:35 25 4
gpt4 key购买 nike

我现在遇到了 google app engine 最奇怪的问题。我正在从 iOS 发送 POST 请求,谷歌应用引擎改为调用 GET 处理程序。

我已经将这种情况放入沙盒中进行测试,但无法弄清楚。我有一个只发送请求的 iOS 应用程序。我已经注释掉了 GAE 上除了服务之外的所有内容。该服务仅记录一个参数并返回。

我尝试过使用两种不同的方式发送请求的 iOS 应用程序。两者都不起作用。

iOS 代码:

/*
NSURL * url = [NSURL URLWithString:@"http://beermonster-gngrwzrd.appspot.com/TestParameter"];
ASIFormDataRequest * _fdrequest = [[ASIFormDataRequest alloc] initWithURL:url];
[_fdrequest setPostValue:@"hello" forKey:@"testkey"];
[_fdrequest startAsynchronous];
*/

NSURL * __url = [NSURL URLWithString:@"http://beermonster-gngrwzrd.appspot.com/TestParameter"];
NSMutableURLRequest * __request = [NSMutableURLRequest requestWithURL:__url];
[__request setHTTPMethod:@"POST"];
NSString * post = [NSString stringWithFormat:@"testkey=hello"];
[__request setHTTPBody:[post dataUsingEncoding:NSUTF8StringEncoding]];
[NSURLConnection sendSynchronousRequest:__request returningResponse:nil error:nil];

我的应用引擎处理程序:

class TestParameter(webapp.RequestHandler):
def post(self):
logging.debug(self.request.get("testkey"))
self.response.out.write(self.request.get("testkey"))
print self.request.get("testkey")
def get(self):
logging.debug("get")
logging.debug(self.request.get("testkey"))
self.response.out.write(self.request.get("testkey"))

GAE 日志中的输出显示“get”代码路径不正确。

知道为什么 POST 请求会作为 GET 进入 GAE 吗?我错过了 GAE 中的某些配置吗?

谢谢!

最佳答案

检查 app.yaml 中的条目以查找处理“/TestParameter”的脚本。它是否指定“安全:始终”?如果是这样,并且您建立了不安全的连接,您将获得 302 重定向到安全版本。

要解决此问题,请通过 HTTPS 发布您的帖子或从 app.yaml 中的条目中删除“secure: always”。

关于ios - 谷歌应用引擎。 Google 应用引擎将 POST 请求视为 GET,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8411185/

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