2014-10-27 7 views
8

https://cloud.google.com/appengine/docs/go/users/राउटर गोरिल्ला मक्स के बिना Google क्लाउड गो हैंडलर?

मैं यहाँ देखते हैं कि वे किसी भी रूटर उपयोग करने के लिए निर्दिष्ट नहीं करते हैं ...: https://cloud.google.com/appengine/docs/go/config/appconfig

Google मेघ में जब Golang के साथ प्रयोग किया है, यह app.yaml में हर हैंडलर निर्दिष्ट करने के लिए कहते हैं। क्या इसका मतलब है कि हमें बेहतर प्रदर्शन के लिए तीसरे पक्ष राउटर का उपयोग नहीं करना चाहिए? मैं राउटर के लिए गोरिल्ला Mux करना चाहता हूं ... अगर मैं Google App Engine Golang App के लिए अन्य राउटर का उपयोग करता हूं तो यह कैसे काम करेगा?

कृपया मुझे बताएं। धन्यवाद!

उत्तर

8

आप ऐप इंजन के साथ गोरिल्ला मक्स का उपयोग कर सकते हैं।

application: myapp 
version: 1 
runtime: go 
api_version: go1 

handlers: 

- url: /(.*\.(gif|png|jpg))$ 
    static_files: static/\1 
    upload: static/.*\.(gif|png|jpg)$ 

- url: /.* 
    script: _go_app 

_go_app स्क्रिप्ट App इंजन द्वारा संकलित जाओ कार्यक्रम है:

app.yaml के संचालकों अनुभाग के अंत में, एक स्क्रिप्ट हैंडलर कि मार्गों जाओ आवेदन करने के लिए सभी रास्ते जोड़ें: यहाँ कैसे। पैटर्न /.* सभी पथों से मेल खाता है।

मुख्य App इंजन द्वारा उत्पन्न समारोह DefaultServeMux के सभी अनुरोधों को डिस्पैच।

एक init() फ़ंक्शन में, बना सकते हैं और एक गोरिल्ला Router कॉन्फ़िगर करें। सभी पथों को संभालने के लिए DefaultServeMux के साथ गोरिल्ला राउटर को पंजीकृत करें:

func init() { 
    r := mux.NewRouter() 
    r.HandleFunc("/", homeHandler) 

    // The path "/" matches everything not matched by some other path. 
    http.Handle("/", r) 
} 
+0

शानदार, मेरे पास एक ही समस्या थी ... –

संबंधित मुद्दे