@@ -11,39 +11,29 @@ import (
1111 "os/exec"
1212)
1313
14- // handle .jpg.webp ext first
15- var convExtCandidates = []string {"" , ".jpg" , ".png" , ".jpeg" }
16-
1714func doWebp (req * http.Request ) (* http.Response , error ) {
1815 var orgRes * http.Response
1916 orgURL := req .URL
20- for _ , cExt := range convExtCandidates {
21- newPath := orgURL .Path [:len (orgURL .Path )- len (".webp" )] + cExt
22- newOrgURL , err := url .Parse (fmt .Sprintf ("%s://%s%s?%s" , orgURL .Scheme , orgURL .Host , newPath , orgURL .RawQuery ))
23- if err != nil {
24- log .Println (err )
25- continue
26- }
27- newReq , err := http .NewRequest ("GET" , newOrgURL .String (), nil )
28- newReq .Header = req .Header
29- if err != nil {
30- log .Println (err )
31- continue
32- }
33- orgRes , err = client .Do (newReq )
34- if err != nil {
35- log .Println (err )
36- continue
37- }
38- if orgRes .StatusCode != 200 {
39- log .Println (orgRes .Status )
40- continue
41- } else {
42- break
43- }
17+ newPath := orgURL .Path [:len (orgURL .Path )- len (".webp" )]
18+ newOrgURL , err := url .Parse (fmt .Sprintf ("%s://%s%s?%s" , orgURL .Scheme , orgURL .Host , newPath , orgURL .RawQuery ))
19+ if err != nil {
20+ log .Println (err )
21+ return nil , err
4422 }
45- if orgRes == nil {
46- return nil , fmt .Errorf ("get origin failed" )
23+ newReq , err := http .NewRequest ("GET" , newOrgURL .String (), nil )
24+ newReq .Header = req .Header
25+ if err != nil {
26+ log .Println (err )
27+ return nil , err
28+ }
29+ orgRes , err = client .Do (newReq )
30+ if err != nil {
31+ log .Println (err )
32+ return nil , err
33+ }
34+ if orgRes .StatusCode != 200 {
35+ log .Println (orgRes .Status )
36+ return nil , err
4737 }
4838 return orgRes , nil
4939}
0 commit comments