绍兴市越城区建设局网站,网站设计公司 推荐,网页网站的区别,做网站用属于前端最近在做一个APP#xff0c;需要与服务器通信#xff0c;一点一点的尝试#xff0c;记录一下。本文使用了OkHttp和Flask框架。Android客户端#xff1a;实现功能输入完点击OK按钮后会toast成功的信息。Python服务端#xff1a;各部分代码如下#xff1a;activity_main.xm…最近在做一个APP需要与服务器通信一点一点的尝试记录一下。本文使用了OkHttp和Flask框架。Android客户端实现功能输入完点击OK按钮后会toast成功的信息。Python服务端各部分代码如下activity_main.xml:xmlns:toolshttp://schemas.android.com/toolsandroid:layout_widthmatch_parentandroid:layout_heightmatch_parentandroid:orientationverticaltools:context.MainActivityandroid:idid/usernameandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop20dpandroid:hintusername /android:idid/passwordandroid:layout_widthmatch_parentandroid:layout_heightwrap_contentandroid:layout_marginTop10dpandroid:hintpassword /android:layout_widthwrap_contentandroid:layout_heightwrap_contentandroid:layout_gravitycenter_horizontalandroid:layout_marginTop10dpandroid:idid/okandroid:textok /为了使用OkHttp需要在build.gradle中添加implementation com.squareup.okhttp3:okhttp:3.11.0MainActivity.java:package com.example.vesper.userpwd;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.view.View;import android.widget.Button;import android.widget.EditText;import android.widget.Toast;import java.io.IOException;import okhttp3.Call;import okhttp3.Callback;import okhttp3.FormBody;import okhttp3.OkHttpClient;import okhttp3.Request;import okhttp3.Response;public class MainActivity extends AppCompatActivity {private Button ok;private EditText username;private EditText password;Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);ok findViewById(R.id.ok);username findViewById(R.id.username);password findViewById(R.id.password);ok.setOnClickListener(new View.OnClickListener() {Overridepublic void onClick(View v) {String name String.valueOf(username.getText());String pass String.valueOf(password.getText());String url http://192.168.xxx.xxx:5000/register;//替换成自己的服务器地址SendMessage(url, name, pass);}});}private void SendMessage(String url, final String userName, String passWord) {OkHttpClient client new OkHttpClient();FormBody.Builder formBuilder new FormBody.Builder();formBuilder.add(username, userName);formBuilder.add(password, passWord);Request request new Request.Builder().url(url).post(formBuilder.build()).build();Call call client.newCall(request);call.enqueue(new Callback() {Overridepublic void onFailure(Call call, IOException e) {runOnUiThread(new Runnable() {Overridepublic void run() {runOnUiThread(new Runnable() {Overridepublic void run() {Toast.makeText(MainActivity.this, 服务器错误, Toast.LENGTH_SHORT).show();}});}});}Overridepublic void onResponse(Call call, final Response response) throws IOException {final String res response.body().string();runOnUiThread(new Runnable() {Overridepublic void run() {if (res.equals(0)) {runOnUiThread(new Runnable() {Overridepublic void run() {Toast.makeText(MainActivity.this, 该用户名已被注册, Toast.LENGTH_SHORT).show();}});} else {runOnUiThread(new Runnable() {Overridepublic void run() {Toast.makeText(MainActivity.this, 成功, Toast.LENGTH_SHORT).show();}});}}});}});}}服务器端userpwd.py:from flask import Flaskfrom flask import requestimport osapp Flask(__name__)app.route(/)def test():return 服务器正常运行#此方法处理用户注册app.route(/register,methods[POST])def register():usernamerequest.form[username]passwordrequest.form[password]print(username:username)print(password:password)return 注册成功if __name__ __main__:app.run(host0.0.0.0)遇到的问题1.一开始总是通信不上提示服务器错误原来是因为没有增加一条权限Android客户端与Python服务器端通信之上传图片继上篇成功的与服务器端通信上之后,我现在需要将安卓本地的图片上传到服务端.服务端接收图片存下来. 参考:https://blog.csdn.net/qq_26906345/article/detail ...Android客户端与Eclipse服务器端的Socket通信Server端代码 用来实现客户端socket的监听 package MyServer; import java.io.BufferedReader; import java.io.BufferedW ...android 客户端支付宝 php服务器端编写生成私钥 输入“genrsa -out rsa_private_key.pem 1024”命令,回车后,在当前 bin 文件目 录中会新增一个 rsa_private_key.pem 文件,其文件为原 ...Android中两个Activity之间简单通信在Android中,一个界面被称为一个activity,在两个界面之间通信,采用的是使用一个中间传话者(即Intent类)的模式,而不是直接通信. 下面演示如何实现两个activity之间的通信. 信 ...Socket 通信原理lpar;Android客户端和服务器以TCPampsemi;ampsemi;UDP方式互通rpar;转载地址:http://blog.csdn.net/mad1989/article/details/9147661 ZERO.前言 有关通信原理内容是在网上或百科整理得到,代码部分为本人所写,如果不当 ...Android客户端与数据库交互数据的简单学习Ø 数据库整理方案如下: 一.Android webservicesSQLServer : 通过webservices客户端向指定服务器发送请求,服务器响应返回指定格式的数据,如json或者x ...Python网络编程-Socket简单通信(及python实现远程文件发送)学习python中使用python进行网络编程,编写简单的客户端和服务器端进行通信,大部分内容来源于网络教程,这里进行总结供以后查阅. 先介绍下TCP的三次握手: 1,简单的发送消息: 服务器端: i ...Android客户端和服务器端数据交互网上有很多例子来演示Android客户端和服务器端数据如何实现交互不过这些例子大多比较繁杂,对于初学者来说这是不利的,现在介绍几种代码简单.逻辑清晰的交互例子,本篇博客介绍第四种: 一.服务器端: 代 ...socket 通信 入门3 android 客户端 Cnum; 服务端这是一个android端操控服务器的例子 就是发送简单指令到服务器 然后服务器响应什么的... 当然这里是未完成的 只是简单展示一下大致思路 首先连接建立起来后 服务端给客户端一条信息 告诉 ...随机推荐oracle正则表达式的用法Oracle 正则表达式函数-REGEXP_SUBSTR 使用例子 .5个参数 第一个是输入的字符串 第二个 ...修改Broforce无限人数死亡不减反加看B站直播发现这个有趣的游戏,找了半天修改器无效,Cheat Engine怎么找指针有点忘了,直接找数值每关都要重来,想来想去还是简单粗暴的反编译好了. 顺便做下C#反编译备忘. 首先把DLL反成IL ...AWS Summit 2014 San Francisco站总结我上个月去San Francisco参加了AWS Summit 2014 会议,总结一下参加这个会议的情况. 什么是AWS Summit? AWS Summit 是AWS在全球各地举办的,针对AWS用 ...Tarjanplus;模板#include #include #include #include #in ...Flash上传组件之SWFUpload文件上传一.什么是SWFUpload? SWFUpload是一个客户端文件上传工具,最初由Vinterwebb.se开发,它通过整合Flash与JavaScript技术为WEB开发者提供了一个具有丰富功能继而 ...JS操作DOM元素属性和方法Dom元素基本操作方法API,先记录下,方便以后使用. W3C DOM和JavaScript很容易混淆不清.DOM是面向HTML和XML文档的API,为文档提供了结构化表示,并定义了如何通过脚本来访 ...---添加一条记录返回一条记录的IDINSERT INTO Web_AD(PID,ADType,ADTitle,ADTitle1,ADTitle2,ADTarget,LinkURL,DispalyWords,ADCode,UploadI ...分享到QQ空间、新浪微博、腾讯微博和人人网function shareys(type, url, title, img, content) { switch (type) { case sina: url quo ...The Beam ModelStream ampsemi;ampsemi; Tables翻译(上)本文由 网易云发布. 作者:周思华 本篇文章仅限内部分享,如需转载,请联系网易获取授权. 本文尝试描述Beam模型和Stream Table理论间的关系(前者描述于数据流模型论文.the ...一文入门HTML51.HTML5 上节回顾:一文读懂ES6(附PY3对比) | 一文入门NodeJS 演示demo:https://github.com/lotapp/BaseCode/tree/master/java ...