简体   繁体   中英

string encoding html

I implemented an http server using javascript and Node.js.

for some reason when the user fills in a form, let's say his full name, on the server side i get what the user filled in but.. i get "+" between all the words instead of " ".

this is the client side:

<form id="register" action="/register" method="post">
<input type="text" id="reg_usname" class="input" name="username" required autofocus/>
<form /> 

this is the server side:

var username=request.parameters['username'];//request is an http request that is         returned

I have no idea why it is that way.

I can just simply replace all the "+" to " " but it seems that there is a smarter way to fix the problem.

The data you are passing back to the server is being URL Encoded.

Here's a the RFC spec from the people who wrote it that explains how & why.

The JavaScript functions you can use to encode/decode can be found on this Mozilla Developer Network page .

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM