web-dev-qa-db-fra.com

Réécriture de l'URL HTTP en HTTPS à l'aide d'une expression régulière et de javascript

Je suis dans une situation où j'ai besoin de réécrire une URL en javascript et de la passer du protocole http à https. 

Je peux faire correspondre les URL https avec:

if(url.match('^http://')){

mais comment puis-je former l'URL https en utilisant des expressions régulières et javascript?

url =  "https://" + ?;
20
stevebot

Remplacez directement par une regex:

url = url.replace(/^http:\/\//i, 'https://');
60
Stephan

Cela ne peut pas être fait en remplaçant simplement le http string? 

if(url.match('^http://')){
     url = url.replace("http://","https://")
}
11
MPękalski

Selon votre cas, vous pourriez préférer trancher:

processed_url = "http" + initial_url.slice(5);

Exemple de http à https:

var initial_url;
var processed_url;

initial_url = "http://stackoverflow.com/questions/5491196/rewriting-http-url-to-https-using-regular-expression-and-javascript";

processed_url = "https" + initial_url.slice(6);

console.log(processed_url)

Exemple de https à http:

var initial_url;
var processed_url;

initial_url = "https://stackoverflow.com/questions/5491196/rewriting-http-url-to-https-using-regular-expression-and-javascript";

processed_url = "http" + initial_url.slice(5);

console.log(processed_url)
0
Ivan Chaer