Unverified Commit a8293924 authored by ysicing's avatar ysicing Committed by GitHub
Browse files

Merge pull request #109 from zsl1549/V5.1

[ADD] Parameter configuration adds new parameters
parents b812bcee 3ce9613b
Showing with 80 additions and 12 deletions
+80 -12
......@@ -105,13 +105,35 @@ export default class HttpTable extends PureComponent {
},
callback: (res) => {
if (res && res._code == 200) {
this.setState({ parameterVisible: values, parameterList: res.bean && res.bean.value })
let arr = []
if (res.bean && res.bean.value) {
if (res.bean.value.set_headers && res.bean.value.set_headers.length > 1) {
res.bean.value.set_headers.map((item) => {
if (item.key != "set-header-Upgrade" && item.key != "set-header-Connection") {
arr.push(item)
}
})
res.bean.value.set_headers=arr
res.bean.value.WebSocket=true
this.setState({ parameterVisible: values, parameterList: res.bean && res.bean.value })
}else{
res.bean.value.WebSocket=false
this.setState({ parameterVisible: values, parameterList: res.bean && res.bean.value })
}
}
}
}
})
}
}
handleClick = () => {
this.setState({ drawerVisible: true })
}
......@@ -192,12 +214,19 @@ export default class HttpTable extends PureComponent {
handleOkParameter = (values) => {
const { dispatch } = this.props;
const arr = [{ key: "set-header-Upgrade", value: "$http_upgrade" }, { key: "set-header-Connection", value: "upgrade" }]
let value = {
proxy_body_size: Number(values.proxy_body_size),
proxy_connect_timeout: Number(values.proxy_connect_timeout),
proxy_read_timeout: Number(values.proxy_read_timeout),
proxy_send_timeout: Number(values.proxy_send_timeout),
set_headers: values.set_headers ? values.set_headers : [],
proxy_buffering: values.proxy_buffering ? "on" : "off",
set_headers: (values.set_headers && values.WebSocket) ?
values.set_headers.length == 1 && values.set_headers[0].key == "" ? arr :
values.set_headers.concat(arr) :
values.set_headers ? values.set_headers : [],
}
dispatch({
type: "gateWay/editParameter",
......
......@@ -17,7 +17,8 @@ import {
InputNumber,
Checkbox,
Icon,
Modal
Modal,
Switch
} from 'antd';
import globalUtil from '../../utils/global';
import styles from './index.less'
......@@ -43,7 +44,9 @@ class ParameterForm extends PureComponent {
service_id: "",
group_name: "",
descriptionVisible: false,
rule_extensions_visible: false
rule_extensions_visible: false,
proxy_buffering: (props.editInfo &&props.editInfo.proxy_buffering&&props.editInfo.proxy_buffering=="on")? true : false,
WebSocket:props.editInfo &&props.editInfo.WebSocket ?true: false
}
}
......@@ -57,8 +60,8 @@ class ParameterForm extends PureComponent {
});
}
onChange = (e) => {
// console.log(`checked = ${e.target.checked}`);
onChangeWebSocket = (e) => {
this.setState({WebSocket:!this.state.WebSocket})
}
......@@ -75,6 +78,7 @@ class ParameterForm extends PureComponent {
}
};
const { editInfo } = this.props
const { proxy_buffering,WebSocket } = this.state
return (
<div>
<Drawer
......@@ -105,7 +109,7 @@ class ParameterForm extends PureComponent {
],
initialValue: editInfo ? editInfo.proxy_connect_timeout : "75"
})(
<Input addonAfter={""} />
<Input addonAfter={""} />
)}
</FormItem>
......@@ -124,7 +128,7 @@ class ParameterForm extends PureComponent {
],
initialValue: editInfo ? editInfo.proxy_send_timeout : "60"
})(
<Input addonAfter={""} />
<Input addonAfter={""} />
)}
</FormItem>
......@@ -142,7 +146,7 @@ class ParameterForm extends PureComponent {
],
initialValue: editInfo ? editInfo.proxy_read_timeout : "60"
})(
<Input addonAfter={""} />
<Input addonAfter={""} />
)}
</FormItem>
......@@ -160,7 +164,7 @@ class ParameterForm extends PureComponent {
],
initialValue: editInfo ? editInfo.proxy_body_size : "1"
})(
<Input addonAfter={"Mb"} />
<Input addonAfter={"Mb"} />
)}
</FormItem>
......@@ -222,12 +226,47 @@ class ParameterForm extends PureComponent {
)}
</FormItem> */}
<FormItem
{...formItemLayout}
label="WebSocket"
className={styles.antd_form}
>
{getFieldDecorator('WebSocket', {
rules: [
{
required: false,
}
],
initialValue: WebSocket
})(
<Checkbox onClick={()=>{this.onChangeWebSocket()}} checked={WebSocket}></Checkbox>
)}
</FormItem>
<FormItem
{...formItemLayout}
label="后端响应缓冲区"
className={styles.antd_form}
>
{getFieldDecorator('proxy_buffering', {
rules: [
{
required: false,
}
],
initialValue: proxy_buffering
})(
<Switch checkedChildren="" unCheckedChildren="" checked={proxy_buffering} onClick={() => { this.setState({ proxy_buffering: !proxy_buffering }) }} />
)}
</FormItem>
<FormItem
{...formItemLayout}
label="自定义请求头"
>
{getFieldDecorator("set_headers", { initialValue: editInfo ? editInfo.set_headers : "" })(<Parameterinput editInfo={ editInfo ? editInfo.set_headers : ""} />)}
{getFieldDecorator("set_headers", { initialValue: editInfo ? editInfo.set_headers : "" })(<Parameterinput editInfo={editInfo ? editInfo.set_headers : ""} />)}
</FormItem>
</Form>
<div
style={{
......
Supports Markdown
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