OLD | NEW |
| (Empty) |
1 // Copyright 2015 The Chromium Authors. All rights reserved. | |
2 // Use of this source code is governed by a BSD-style license that can be | |
3 // found in the LICENSE file. | |
4 | |
5 package lhttp | |
6 | |
7 import ( | |
8 "errors" | |
9 "net/url" | |
10 "strings" | |
11 ) | |
12 | |
13 // URLToHTTPS ensures the url is https://. | |
14 func URLToHTTPS(s string) (string, error) { | |
15 u, err := url.Parse(s) | |
16 if err != nil { | |
17 return "", err | |
18 } | |
19 if u.Scheme != "" && u.Scheme != "https" { | |
20 return "", errors.New("Only https:// scheme is accepted. It can
be omitted.") | |
21 } | |
22 if !strings.HasPrefix(s, "https://") { | |
23 s = "https://" + s | |
24 } | |
25 if _, err = url.Parse(s); err != nil { | |
26 return "", err | |
27 } | |
28 return s, nil | |
29 } | |
OLD | NEW |