簡體   English   中英

如何動態創建端點ResourceContainer

[英]How can I dynamically create an endpoints ResourceContainer

因此,使用Google Cloud Endpoints,我們可以創建自定義請求消息並從中創建一個endpoints.ResourceContainer,如下所示:

Test_Resource = endpoints.ResourceContainer(message_types.VoidMessage, 
                                   param1=messages.IntegerField(2, required=False),
                                   param2=messages.StringField(3, required=False))

然后在我們的端點中使用該方法。

@endpoints.method(Test_Resource, MessageCommon, path='list', http_method='POST', name='list')
    def model_list(self, request):
        pass

我的問題是,有什么方法可以通過傳遞包含消息類型的字典來動態創建ResourceContainer。 類似於創建ResourceContainer的工廠:

def get_resource_container(messageCls, dict):
    new_rc = endpoints.ResourceContainer(messageCls) 
    # How do I add in the dict's properties to the ResourceContainer here
    # ...
    return new_rc

這將有助於避免每次都創建新的Message類。 我們可以保持重用相同的基類:

Test_RC2 = get_resource_container(message.types.VoidMessage, dict)
@endpoints.method(Test_RC2, MessageCommon, path='list', http_method='POST', name='list')
    def model_list(self, request):
        pass

我試圖搜索ResourceContainer的詳細信息,但似乎沒有可用的內容。
這有可能嗎?

如果要將字典轉換為命名參數列表,可以執行以下操作: endpoints.ResourceContainer(messageCls, **dict)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM