URL传参数是JSON字符串时,接收参数有错的解决办法。

来源:互联网 发布:stp真空隔热板 知乎 编辑:程序博客网 时间:2024/06/05 22:59

URL传递参数,参数是JSON 字符串,将字符串拼在url?后,该url不识别,报400错误。

解决办法:使用encodeURIComponent方法,对json字符串进行转码。encodeURIComponent,它是将中文、韩文等特殊字符转换成utf-8格式的url编码,所以如果给后台传递参数需要使用encodeURIComponent时需要后台解码对utf-8支持。

代码:

var col_authority = {"wfe_node_id":""+leswfe_task_inst_obj.NODE_ID+"","config":[{"node_id":"u5Sg70uRwYEtHY6j","col_field":["OFFICE_NAME","OFFICE_IF","OFFICE_NUMBER","OFFICE_DATE"],"btn_flag":"1"},{"node_id":"LVskPe5JBN5zrALL","col_field":["OFFICE_NAME","OFFICE_IF",],"btn_flag":"0"}]};        leswfe_fmx_table_make(fm01.inp_dyn_tab2, '../form/DynTable_edit_nodb.jsp?col_authority='+encodeURIComponent(mini.encode(col_authority)));

这里col_authority直接拼字符串易错,使用mini.encode转换为字符串,也可使用JSON.stringify()方法。

这时,在接收参数时出现问题,在jsp中var col_authority = “<%=col_authority%>”;报错,经过调试将<%=col_authority%>”双引号去掉,问题解决。

关于encodeURIComponent方法详见点击打开链接

0 0
原创粉丝点击