雖然工作在Python我發現我的IDE(蝕)提出了幾個方法,這些方法似乎是相同的一個GAE項目:GAE API中'重複'函數的用途是什麼?
我要使用這個API來發送電子郵件和according to the docssend_mail
應該用於此。然而,當我在日食中看到SendMail
時,我開始懷疑是否其中一個已被棄用,於是我去搜索了有關這方面的信息。
我碰到了the page that documents the functions that the mail api offers並注意到SendMail
沒有包含在那裏,我發現這很奇怪。
我做下一件事就是檢查source code for the mail api對於任何能告訴我更多關於這一點,有(線376),我發現:
def send_mail(sender,
to,
subject,
body,
make_sync_call=apiproxy_stub_map.MakeSyncCall,
**kw):
"""Sends mail on behalf of application.
Args:
sender: Sender email address as appears in the 'from' email line.
to: List of 'to' addresses or a single address.
subject: Message subject string.
body: Body of type text/plain.
make_sync_call: Function used to make sync call to API proxy.
kw: Keyword arguments compatible with EmailMessage keyword based
constructor.
Raises:
InvalidEmailError when invalid email address provided.
"""
kw['sender'] = sender
kw['to'] = to
kw['subject'] = subject
kw['body'] = body
message = EmailMessage(**kw)
message.send(make_sync_call)
SendMail = send_mail
什麼引起我注意的是底線
SendMail = send_mail
結論:它們是相同的。通過不同名稱提供兩次相同功能的原因可能是什麼?
我搜索了一下,試圖找到一個原因,你爲什麼要這樣做,但我找不到任何東西。儘管我顯然不是專家,但似乎沒有增加任何價值。
這是一個很好的問題 - 我在google apis上看到過很多。我推測這只是提供了2種編碼風格,但有興趣知道是否還有其他原因。 –