Commit 0ee08e1e authored by Chunchi Che's avatar Chunchi Che

add ssl option in matchModal

parent 7fdc5008
Pipeline #23619 passed with stages
in 16 minutes and 1 second
...@@ -17,7 +17,7 @@ export class WebSocketStream { ...@@ -17,7 +17,7 @@ export class WebSocketStream {
ssl: boolean, ssl: boolean,
onWsOpen?: (ws: WebSocket, ev: Event) => any, onWsOpen?: (ws: WebSocket, ev: Event) => any,
) { ) {
this.ws = new WebSocket(ssl ? "wss://" : "ws://" + ip); this.ws = new WebSocket((ssl ? "wss://" : "ws://") + ip);
if (onWsOpen) { if (onWsOpen) {
this.ws.onopen = (e) => onWsOpen(this.ws, e); this.ws.onopen = (e) => onWsOpen(this.ws, e);
} }
......
import { App, Button, Input, Modal } from "antd"; import { App, Button, Checkbox, Input, Modal, Space } from "antd";
import { CheckboxChangeEvent } from "antd/es/checkbox";
import React, { ChangeEvent, useEffect, useState } from "react"; import React, { ChangeEvent, useEffect, useState } from "react";
import { useNavigate } from "react-router-dom"; import { useNavigate } from "react-router-dom";
import { proxy, useSnapshot } from "valtio"; import { proxy, useSnapshot } from "valtio";
...@@ -36,22 +37,25 @@ export const MatchModal: React.FC = ({}) => { ...@@ -36,22 +37,25 @@ export const MatchModal: React.FC = ({}) => {
const [server, setServer] = useState( const [server, setServer] = useState(
`${serverConfig[0].ip}:${serverConfig[0].port}`, `${serverConfig[0].ip}:${serverConfig[0].port}`,
); );
const [ssl, setSSL] = useState(true);
const [confirmLoading, setConfirmLoading] = useState(false); const [confirmLoading, setConfirmLoading] = useState(false);
const navigate = useNavigate(); const navigate = useNavigate();
let handlePlayerChange = (event: ChangeEvent<HTMLInputElement>) => { const handlePlayerChange = (event: ChangeEvent<HTMLInputElement>) => {
setPlayer(event.target.value); setPlayer(event.target.value);
}; };
let handleServerChange = (event: ChangeEvent<HTMLInputElement>) => { const handleServerChange = (event: ChangeEvent<HTMLInputElement>) => {
setServer(event.target.value); setServer(event.target.value);
}; };
let handlePasswdChange = (event: ChangeEvent<HTMLInputElement>) => { const handlePasswdChange = (event: ChangeEvent<HTMLInputElement>) => {
setPasswd(event.target.value); setPasswd(event.target.value);
}; };
const handleSSLCheck = (event: CheckboxChangeEvent) =>
setSSL(event.target.checked);
const handleSubmit = async () => { const handleSubmit = async () => {
setConfirmLoading(true); setConfirmLoading(true);
await connectSrvpro({ player, ip: server, passWd: passwd, ssl: true }); await connectSrvpro({ player, ip: server, passWd: passwd, ssl });
}; };
useEffect(() => { useEffect(() => {
...@@ -99,14 +103,23 @@ export const MatchModal: React.FC = ({}) => { ...@@ -99,14 +103,23 @@ export const MatchModal: React.FC = ({}) => {
onChange={handlePlayerChange} onChange={handlePlayerChange}
required required
/> />
<Input <Space.Compact>
className={styles.input} <Input
type="text" className={styles.input}
placeholder="服务器(IP+端口)" type="text"
value={server} placeholder="服务器(IP+端口)"
onChange={handleServerChange} value={server}
required onChange={handleServerChange}
/> required
/>
<Checkbox
checked={ssl}
onChange={handleSSLCheck}
defaultChecked={true}
>
SSL
</Checkbox>
</Space.Compact>
<Input <Input
className={styles.input} className={styles.input}
type="text" type="text"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment