Commit d876b266 by jscat

nyx: 公屏功能

解决了android系统上传msg的乱码问题
credit to 红衣
parent 65dc6dfb
//app.js
//app.js
......@@ -58,13 +58,14 @@ App({
initSocket(sid, uid, msg) {
let _this = this
var strUrl = ""
var strMsg = encodeURI(encodeURI(msg));
if(config.local == 1)
{
strUrl = config.socket_url + "?sid=" + sid + "&uid=" + uid + "&msg=" + msg
strUrl = config.socket_url + "?sid=" + sid + "&uid=" + uid + "&msg=" + strMsg
}
else
{
strUrl = config.socket_url + "/wss?sid=" + sid + "&uid=" + uid + "&msg=" + msg
strUrl = config.socket_url + "/wss?sid=" + sid + "&uid=" + uid + "&msg=" + strMsg
}
config.debug == 1 ? console.log("===initSocket_strUrl_" + strUrl) : ""
_this.globalData.socketTask = wx.connectSocket({
......
// pages/key/key.js
// pages/key/key.js
......@@ -105,6 +105,7 @@ Page({
if (app.globalData.socketTask.readyState != 1 && app.globalData.socketTask.readyState != 0) {
var sid = _this.data.sid
if (sid != undefined && nyxCode != undefined && sid != "" && nyxCode != "") {
console.log("===onLoad_initSocket")
app.initSocket(sid, nyxCode, "进入竞答环节")
app.globalData.socketClose = false
}
......@@ -150,6 +151,7 @@ Page({
if (app.globalData.socketTask.readyState != 1 && app.globalData.socketTask.readyState != 0 && uid != "") {
var sid = _this.data.sid
if (sid != undefined && uid != undefined && sid != "" && uid != "") {
console.log("===onShow_initSocket")
app.initSocket(sid, uid, "进入竞答环节")
app.globalData.socketClose = false
}
......@@ -194,6 +196,7 @@ Page({
if (!app.globalData.socketClose) {
clearTimeout(app.globalData.connectSocketTimeOut)
app.globalData.connectSocketTimeOut = setTimeout(() => {
console.log("===onClose_initSocket")
app.initSocket(_this.data.sid, app.globalData.nyxCode, "进入竞答环节")
}, 3000);
}
......
package cn.com.fun.nyxkey.api.config;
package cn.com.fun.nyxkey.api.config;
package cn.com.fun.nyxkey.api.config;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import java.net.URLEncoder;
import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.CopyOnWriteArraySet;
......@@ -58,24 +61,25 @@ public class WebSocketServer {
/**
* 连接建立成功调用的方法*/
@OnOpen
public void onOpen(Session session, @PathParam("param") String param) {
public void onOpen(Session session, @PathParam("param") String param) throws UnsupportedEncodingException {
System.out.println("用户"+param+" 登录");
Map<String, String> map = session.getPathParameters();
System.out.println("session.getPathParameters()"+map.toString());
String str = session.getQueryString();
System.out.println("session.getQueryString()"+str);
String uri = session.getRequestURI().toString();
System.out.println("session.getRequestURI().toString()"+uri);
// Map<String, String> map = session.getPathParameters();
// System.out.println("session.getPathParameters()"+map.toString());
//
// String str = session.getQueryString();
// System.out.println("session.getQueryString()"+str);
//
// String uri = session.getRequestURI().toString();
// System.out.println("session.getRequestURI().toString()"+uri);
String url = session.getQueryString();
System.out.println("session.getQueryString()"+url);
String result= URLDecoder.decode(url,"UTF-8");
System.out.println("session.getQueryString()"+result);
MultiMap multiMap = new MultiMap();
UrlEncoded.decodeTo(url.substring(url.indexOf("?") + 1), multiMap, "UTF-8");
UrlEncoded.decodeTo(result.substring(result.indexOf("?") + 1), multiMap, "UTF-8");
System.out.println(multiMap.toString());
this.session = session;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论