1
使用git,你可以configure the http.useragent
variable,但我不知道類似的設置在mercurial中。任何人都知道如何做到這一點?有沒有辦法配置mercurial在用戶代理頭中發送的內容?
使用git,你可以configure the http.useragent
variable,但我不知道類似的設置在mercurial中。任何人都知道如何做到這一點?有沒有辦法配置mercurial在用戶代理頭中發送的內容?
有沒有爲它的直接支持,但它應該是可能的擴展,使其能夠:
from mercurial import url, extensions
def wrap_opener(orig, ui, authinfo=None):
result = orig(ui, authinfo)
agent = ui.config("http", "useragent")
if agent:
ah = result.addheaders
for i in xrange(len(ah)):
if ah[i][0] == "User-agent":
ah[i] = ("User-agent", agent)
return result
def uisetup(ui):
extensions.wrapfunction(url, "opener", wrap_opener)
這使您可以設置用戶代理在~/.hgrc
或.hg/hrc
有:
[http]
useragent = "..."
警告:我只測試了擴展不會破壞Mercurial,並且opener對象被適當地修改,但我沒有實際驗證是否正在通過網絡發送正確的User-agent頭。
完美工作。感謝您編寫它。用戶代理標題已按指定設置。 – MidnightJava
afaik答案是'不'。它被設置爲使用的mercurial版本。 – planetmaker