有时我想从我的节点应用程序通过邮件发送合格的 URL。或者我想设置幻像页面对象的内容。
我在部署设置中获得了这样的完整 URL。
'http://' + req.hostname + '/myapp'
Run Code Online (Sandbox Code Playgroud)
然而,在开发机器上,这通常会产生:
http://localhost/myapp而不是http://localhost:3000/myapp
我知道如何获取端口,但我不想使用类似的东西:
'http://' + req.hostname + ':' + port + '/myapp'
Run Code Online (Sandbox Code Playgroud)
在代理后面部署时会产生这样的废话。
如果应用程序在代理外部运行,是否有一种智能方法可以从请求对象获取带有端口的主机名?
假设我有一个包含两个容器的docker compose文件.两者都在/ etc/hosts文件中相互引用.容器A具有容器B的参考,反之亦然.所有这些都是自动发生的.现在我想在A的hosts文件中为B添加一个或多个主机名.我该怎么做呢?有没有一种特殊的方法可以在Docker Compose中实现这一点?
例:
172.0.10.166 service-b my-custom-hostname
我想在Python中获取主机名.在linux中,如果我输入hostname命令提示符,我得到
root@phxdbx45:/home/david/zkpython# hostname
phxdbx45
Run Code Online (Sandbox Code Playgroud)
但是,如果我键入,hostname -f那么我会在ubuntu中获得完全限定的主机名,这也是我需要的Python.
root@phxdbx45:/home/david/zkpython# hostname -f
phxdbx45.phx.host.com
Run Code Online (Sandbox Code Playgroud)
我知道在Python中我们可以使用下面的代码,但它不会给我完全限定的主机名.它给了hostname我如上所述的输出.
#!/usr/bin/python
import socket
hostname = socket.gethostname()
print hostname
Run Code Online (Sandbox Code Playgroud)
有没有办法在Python中获得可靠且正确的完全限定主机名?
是否有内置的Windows C++函数调用,可以获取主机名和IP地址?谢谢.
我可能不是第一个提出这个问题的人,但在环顾四周之后找不到我想要的东西.我想从URL获取基本URL.我试过了
HttpContext.Current.Request.Url.AbsoluteUri
Run Code Online (Sandbox Code Playgroud)
它会返回完整的URL
http://localhost:59112/Resources/VideoPlayer.aspx?ID=resources1.mp4
Run Code Online (Sandbox Code Playgroud)
我只需要到这里(例如)
http://localhost:59112/
Run Code Online (Sandbox Code Playgroud)
谢谢你的帮助.
我正在寻找一种方法来解决我的局域网中设备的主机名从其局域网上的IP地址.
我在C中编写了一个程序,它使用gethostbyaddr()函数在Linux上完美运行.
当我在OS X或iOS上尝试它时,它不起作用.
似乎OS X和iOS中的gethostbyaddr()存在问题.
无论如何,如果你有另一个想法从iOS的IP获取远程机器的主机名,它将成为我的一天.
这是我使用的代码:
第一次测试:
192.168.0.101是我们查询主机名的机器的IP地址.
#include <netdb.h>
#include <netinet/in.h>
#include <arpa/inet.h>
struct hostent *he;
struct in_addr ipv4addr;
inet_pton(AF_INET, "192.168.0.101", &ipv4addr);
he = gethostbyaddr(&ipv4addr, sizeof ipv4addr, AF_INET);
printf("Host name: %s\n", he->h_name);
Run Code Online (Sandbox Code Playgroud)
这段代码适用于linux,但它不适用于OS X或iOS.
第二次测试:
+ (NSArray *)hostnamesForAddress:(NSString *)address {
// Get the host reference for the given address.
struct addrinfo hints;
struct addrinfo *result = NULL;
memset(&hints, 0, sizeof(hints));
hints.ai_flags = AI_NUMERICHOST;
hints.ai_family = PF_UNSPEC;
hints.ai_socktype = SOCK_STREAM;
hints.ai_protocol = 0;
int errorStatus = getaddrinfo([address cStringUsingEncoding:NSASCIIStringEncoding], …Run Code Online (Sandbox Code Playgroud) 我刚刚设法使用request.host和request.url_root在Flask中获取我的应用服务器主机名,但两个字段都返回主机名及其端口.我想使用只返回主机名的字段/方法,而不必进行字符串替换,如果有的话.
我最近升级到macOS Sierra,我再也无法解析我的.local主机名.
我已经尝试恢复httpd.conf和httpd-vhosts.conf文件,但它没有帮助.
但是,我可以使用IP地址访问我的网络服务器,但不能使用.local主机名.如果我ping IP,它可以正常工作,但ping主机名会出现"Unknown host".运行"host mymac.local"会找不到Host server.local:3(NXDOMAIN).
我还尝试使用scutil设置ComputerName,HostName和LocalHostName.
显然重启也没有帮助.
有任何人遇到同样的问题或者想知道如何解决这个问题?非常感谢,非常感谢!
到目前为止,我还没有看到任何关于自定义终结者"提示"颜色的内容.
我知道这是可能的,~/.bashrc但这被终结者覆盖了.有没有办法进一步自定义终结者的颜色或强制它使用自定义的bashrc颜色?
如果这些都不可能,我至少可以大胆一点吗?原因是当输出很长时,使每个用户执行明显突出.
我想找到如何以编程方式提取我的计算机名称,类似于以下终端命令的输出scutil --get ComputerName。该值也可以在“关于本机”->“系统软件概述”下找到,如下图所示:
所以我发现一种方法是使用 NSHost,但它早已被弃用:
[[NSHost currentHost] localizedName]
Run Code Online (Sandbox Code Playgroud)
在 NSHost.h 中它提到了在哪里寻找..
请改用网络框架,请参阅 <Foundation/NSHost.h> 中的弃用通知
所以我查看了那里并发现nw_endpoint_get_hostname但它没有关于如何用于获取本地主机名的正确文档。
任何想法如何以编程方式获取此数据(swift/objective-c/c++)
hostname ×10
objective-c ×2
python ×2
base-url ×1
c++ ×1
colors ×1
docker ×1
domain-name ×1
express ×1
flask ×1
ios ×1
ip-address ×1
localhost ×1
macos ×1
macos-sierra ×1
node.js ×1
port ×1
prompt ×1
proxy ×1
request ×1
swift ×1
terminator ×1
url ×1
winapi ×1