का निर्माण कर रहे हैं मैं जाने के लिए बहुत नया हूं और अभी तक सबकुछ समझ नहीं पा रहा हूं। कई आधुनिक भाषाओं में Node.js, कोणीय, jQuery, PHP आप अतिरिक्त क्वेरी स्ट्रिंग पैरामीटर के साथ एक GET अनुरोध कर सकते हैं।एक GET अनुरोध कर रहे हैं और Querystring
गो में ऐसा करना काफी आसान नहीं है, और मैं वास्तव में इसे अभी तक नहीं समझ सकता। मैं वास्तव में उन सभी अनुरोधों के लिए एक स्ट्रिंग को जोड़ना नहीं चाहता हूं जो मैं करना चाहता हूं।
package main
import (
"fmt"
"io/ioutil"
"net/http"
)
func main() {
client := &http.Client{}
req, _ := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular", nil)
req.Header.Add("Accept", "application/json")
resp, err := client.Do(req)
if err != nil {
fmt.Println("Errored when sending request to the server")
return
}
defer resp.Body.Close()
resp_body, _ := ioutil.ReadAll(resp.Body)
fmt.Println(resp.Status)
fmt.Println(string(resp_body))
}
इस उदाहरण आप देख सकते हैं एक यूआरएल है, जो मूल्य के रूप में अपने api कुंजी के साथ api_key की GET चर की आवश्यकता होती है में:
यहाँ नमूना स्क्रिप्ट है। समस्या की जा रही इस कठिन के रूप में कोडित फिर हो सकती है:
req, _ := http.NewRequest("GET", "http://api.themoviedb.org/3/tv/popular?api_key=mySuperAwesomeApiKey", nil)
इस क्वेरी स्ट्रिंग गतिशील निर्माण करने के लिए एक रास्ता है ?? फिलहाल मुझे वैध प्रतिक्रिया प्राप्त करने के लिए इस चरण से पहले यूआरएल इकट्ठा करने की आवश्यकता होगी।
तो क्या एक स्ट्रिंग श्रृंखलाबद्ध साथ गलत क्या है? –
मुझे कुछ भी नहीं लगता है, लेकिन यह वास्तव में एक सुरुचिपूर्ण सोल्शन नहीं है, बस सोचा कि गो में चीजों को करने का एक बेहतर तरीका है। आप क्रिया परिवर्तन, विधि देखते हैं और फिर आपको सब कुछ एक साथ स्ट्रिंग करना होगा। –
आप ['url.Values'] (https://golang.org/pkg/net/url/#Values) का उपयोग कर सकते हैं [' एनकोड'] (https://golang.org/pkg/net/url /#Values.Encode) विधि। संपूर्ण यूआरएल बनाने के लिए आप ['URL.String'] (https://golang.org/pkg/net/url/#URL.String) का भी उपयोग कर सकते हैं। –