正确设置命令行应用程序的User-Agent?

时间:2013-05-06 04:10:05

标签: node.js http user-agent github-api

我构建了一个nodejs command line utility,以便从命令行轻松安全地发布帖子。它运作良好,但我想知道为这样的事情设置User-Agent的正确方法是什么。

现在它被设置为一个基本上任意的字符串:“nodejs / 0.0.1(node)gist命令行工具v0.0.1”。

是否有关于设置用户代理的指南?有没有理由正确设置?设置错误是否会产生任何负面影响?我正在做的就是发一些http请求。

1 个答案:

答案 0 :(得分:2)

我认为指南位于RFC 2068(14.42)(且RFC 1945几乎相同)

作为RFC 2068,用户代理应该像这样

User-Agent     = "User-Agent" ":" 1*( product | comment )

product         = token ["/" product-version]
token          = 1*<any CHAR except CTLs or tspecials>
product-version = token
comment        = "(" *( ctext | comment ) ")"
ctext          = <any TEXT excluding "(" and ")">

在我看来,如果您正确设置了用户代理,现有的Web服务器或Web应用程序可以正确地解析您的用户代理以进行日志记录等。