易语言 post在电脑可以 在服务器不行

易语言 post在电脑可以 在服务器不行,第1张

可能是服务器有问题。

电脑易语言首先第一步鼠标左键点击程序然后点击新建。然后点击windows窗口程序,然后点击确定。

然后在右侧找到并点击基本组件2和服务器

看下你post的方法,设置下这个

httpURLConnection.setRequestProperty("Charset", "utf-8")

拼接参数时:转一下格式

URLEncoder.encode(String.valueOf(value), "utf-8")

下面是我使用的POST方法,最简单的一种

Map<String, String> params = new HashMap<>() //参数

HttpURLConnection urlCon = null

URL urlInstance

StringBuilder sbResult = new StringBuilder()

try {

urlInstance = new URL(url)

urlCon = (HttpURLConnection) urlInstance.openConnection()

urlCon.setRequestMethod("POST")

urlCon.setDoOutput(true) // 是否可以发送数据到服务器

urlCon.setDoInput(true) // 设置是否读服务端

urlCon.setUseCaches(false) // 设置是否缓存

urlCon.setConnectTimeout(15000)// 设置响应超时

// 固定格式

urlCon.setRequestProperty("Content-Type", "application/x-www-form-urlencoded")

urlCon.setRequestProperty("Charset", "utf-8")

// 对参数进行处理

String data = ""

if (params != null) {

String value

Set<String> set = params.keySet()// 获取到所有map的键

for (String string : set) {// 遍历参数,拼接data

value = params.get(string)

data += string + "=" + URLEncoder.encode(String.valueOf(value), "utf-8") + "&"

}

}

urlCon.setRequestProperty("Content-Length", String.valueOf(data.length())) // 设置长度

// 往服务器写入数据

OutputStream out = urlCon.getOutputStream()

out.write(data.getBytes())

out.flush()

// 接收服务器返回的数据

InputStream in = urlCon.getInputStream()

BufferedReader br = new BufferedReader(new InputStreamReader(in))

String line// 每一行的数据

while ((line = br.readLine()) != null) {

sbResult.append(line)

}


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/660959.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-25
下一篇2023-07-25

发表评论

登录后才能评论

评论列表(0条)

    保存