gpt4 book ai didi

android - 构建一个 Android 应用程序与 python Tornado 服务器通信

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:23:32 26 4
gpt4 key购买 nike

关于使用 Tornado 创建 Web 服务器来处理来自 Android 手机的 GET/POST 请求,我在网上看到的信息很少。我对 Android 和 Web 服务器开发都比较陌生,但我对 Tornado 有一些经验,所以我想我会使用它,尽管似乎非常缺乏使用这两种技术的教程。

import tornado.ioloop
import tornado.web

class MainHandler(tornado.web.RequestHandler):
def get(self):
self.write("Hello, world")

def main():
return tornado.web.Application([
(r"/", MainHandler),
])

if __name__ == "__main__":
app = main()
app.listen(8888)
tornado.ioloop.IOLoop.current().start()

我正在使用 HttpURLConnection 类创建与 Web 服务器的连接,该服务器使用 tutorial我用过,但我现在正尝试将我的 android 应用程序连接到我计算机上的 Tornado Web 服务器,以便在我单击我的 android 应用程序上的按钮时从服务器简单地获取“Hello world”。我没有提供教程的 http.php/get URL(已经过测试并且有效),而是想尝试使用我计算机的 IP 连接我的服务器,所以我将 URL 替换为 http://x.x.x.x:8888/ ,我的 IPv4 地址,但这不起作用。

GetBtn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View V) {
new MakeNetworkCall().execute("http://androidpala.com/" +
"tutorial/http.php?get=1", "Get");
}
});

如有必要,我可以提供更多我的 android 代码。感谢您的帮助,我根本无法弄清楚。

最佳答案

是的,您可以处理来自 android 的 GET/POST 调用。您还可以从服务器 PHP 页面以数组或字符串的形式将响应发送到 Android 应用程序。


StringRequest stringRequest = new StringRequest(Request.Method.POST, "https://www.socialmatrimony.in/insta_promo/register.php",
new Response.Listener<String>() {
@Override
public void onResponse(String response) {
Toast.makeText(getActivity(),response,Toast.LENGTH_LONG).show();
}
},
new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(getActivity(),error.toString(),Toast.LENGTH_LONG).show();
}
}){
@Override
protected Map<String,String> getParams(){
Map<String,String> params = new HashMap<String, String>();
params.put("NAME",NameField.getText().toString());
params.put("EMAIL",EmailField.getText().toString());
params.put("PHONENUMBER", NumberField.getText().toString());
params.put("IMEI", MainActivity.deviceid);
return params;
}

};

RequestQueue requestQueue = Volley.newRequestQueue(getActivity());
requestQueue.add(stringRequest);

在服务器上注册.php文件


<?php

if($_SERVER['REQUEST_METHOD']=='POST')
{
$username = $_POST['user'];
$password = $_POST['pass'];
$value = $_POST['val'];

// do operations here

echo "success@".$username.$password.$value;

}
else
{
echo "error";

}

您应该添加 google volley.jar 作为您的 jar 依赖项。

关于android - 构建一个 Android 应用程序与 python Tornado 服务器通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48949726/

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