修复监控失败的问题

This commit is contained in:
dushixiang
2022-02-13 14:42:22 +08:00
parent 77f253c748
commit 6165265417
8 changed files with 152 additions and 123 deletions

View File

@ -15,8 +15,6 @@ const STATE_DISCONNECTED = 5;
class AccessMonitor extends Component {
formRef = React.createRef()
state = {
client: {},
containerOverflow: 'hidden',
@ -29,7 +27,7 @@ class AccessMonitor extends Component {
};
async componentDidMount() {
const connectionId = this.props.connectionId;
const sessionId = this.props.sessionId;
let rate = this.props.rate;
let protocol = this.props.protocol;
let width = this.props.width;
@ -45,7 +43,7 @@ class AccessMonitor extends Component {
height: height * rate,
rate: rate,
})
this.renderDisplay(connectionId);
this.renderDisplay(sessionId);
}
componentWillUnmount() {
@ -110,9 +108,9 @@ class AccessMonitor extends Component {
});
}
async renderDisplay(connectionId, protocol) {
async renderDisplay(sessionId, protocol) {
let tunnel = new Guacamole.WebSocketTunnel(wsServer + '/tunnel');
let tunnel = new Guacamole.WebSocketTunnel(`${wsServer}/sessions/${sessionId}/tunnel-monitor`);
tunnel.onstatechange = this.onTunnelStateChange;
let client = new Guacamole.Client(tunnel);
@ -128,7 +126,6 @@ class AccessMonitor extends Component {
let token = getToken();
let params = {
'connectionId': connectionId,
'X-Auth-Token': token
};

View File

@ -62,7 +62,7 @@ class BatchCommandTerm extends Component {
let paramStr = qs.stringify(params);
let webSocket = new WebSocket(wsServer + '/ssh?' + paramStr);
let webSocket = new WebSocket(`${wsServer}/sessions/${sessionId}/ssh?${paramStr}`);
this.props.appendWebsocket({'id': assetId, 'ws': webSocket});

View File

@ -113,13 +113,12 @@ class Term extends Component {
let params = {
'cols': term.cols,
'rows': term.rows,
'sessionId': sessionId,
'X-Auth-Token': token
};
let paramStr = qs.stringify(params);
let webSocket = new WebSocket(wsServer + '/ssh?' + paramStr);
let webSocket = new WebSocket(`${wsServer}/sessions/${sessionId}/ssh?${paramStr}`);
let pingInterval;
webSocket.onopen = (e => {

View File

@ -33,13 +33,12 @@ class TermMonitor extends Component {
let token = getToken();
let params = {
'sessionId': sessionId,
'X-Auth-Token': token
};
let paramStr = qs.stringify(params);
let webSocket = new WebSocket(wsServer + '/ssh-monitor?' + paramStr);
let webSocket = new WebSocket(`${wsServer}/sessions/${sessionId}/ssh-monitor?${paramStr}`);
webSocket.onmessage = (e) => {
let msg = Message.parse(e.data);
switch (msg['type']) {

View File

@ -202,7 +202,6 @@ class OnlineSession extends Component {
showMonitor = (record) => {
this.setState({
connectionId: record.connectionId,
sessionId: record.id,
sessionProtocol: record.protocol,
sessionMode: record.mode,
@ -477,7 +476,7 @@ class OnlineSession extends Component {
>
{
this.state.sessionMode === 'guacd' ?
<AccessMonitor connectionId={this.state.connectionId}
<AccessMonitor sessionId={this.state.sessionId}
width={this.state.sessionWidth}
height={this.state.sessionHeight}
protocol={this.state.sessionProtocol}