常见问题当前位置:星鸿娱乐 > 常见问题 > >

星鸿娱乐注册:关于backbone url请求中参数带有中

  

[backbone,url,存入数据库乱码]关于backbone url请求中参数带有中文存入数据库是乱码的快速解决办法

  

最近项目用到了backbone 做前后端的分离方案,遇见了中文乱码问题,解决方案总结如下:  
  

  

假设需要存一条课程记录到后台  
  

  

model定义如下:  

  
  
  var AddCourse= Backbone.Model.extend({  url:path+"/course/add",  parse : function(response){  return response.data;  }  });
  
  

encodeURIComponent 函数 将中文的内容进行编码  
  

  
  
  $('#addCourseBtn' ).click(function(){  var courseName = encodeURIComponent($('#myCourseName').val().trim(), 'utf8');  var description = encodeURIComponent( $('#description').val().trim(),'utf8' );  var privilege = encodeURIComponent($('#privilege').val().trim(), 'utf8');  var userId=$.cookie( 'userId');  var course = new AddCourse();  //传数据  course.fetch({data : $.param({ courseName : courseName,description : description,privilege : privilege,userId : userId})});  });
  
  

api定义,URLDecoder.decode函数进行解码  
  

  
  
  @Controller  @RequestMapping("/course")  public class CourseController {  @Resource  private CourseService courseService;  @RequestMapping("/add")  //添加代码:编码修改  @ResponseBody  public Result add(String courseName,String description,String privilege,int userId){  String deCourseName;  String deDescription;  String dePrivilege;  Result result =new Result();  try {  deCourseName = URLDecoder.decode(courseName, "UTF-8");  deDescription = URLDecoder.decode(description, "UTF-8");  dePrivilege = URLDecoder.decode(privilege, 星鸿娱乐平台 "UTF-8");  result=courseService.addCourse(deCourseName, deDescription, dePrivilege, userId);  } catch (UnsupportedEncodingException e) {  // TODO Auto-generated catch block  e.printStackTrace();  }  return result;  }
  
  

  

(责任编辑:admin)

上一篇:java与javascript之间json格式数据互转介绍

下一篇:星鸿娱乐注册:javascript html5摇一摇功能的实现

推荐内容

客户服务热线

400 888 8932

在线客服