假设我有一个Internet上任何人都可以访问的API,但是一个端点,例如
import pandas as pd
temp=u"""Alabama 400 300 200
New York 400 200 100
Missouri 400 200 50
District of Columbia 450 100 250"""
#after testing replace 'pd.compat.StringIO(temp)' to 'filename.csv'
df = pd.read_csv(pd.compat.StringIO(temp), sep="|", names=['Data'])
print (df)
Data
0 Alabama 400 300 200
1 New York 400 200 100
2 Missouri 400 200 50
3 District of Columbia 450 100 250
df = df['Data'].str.rsplit(n=3, expand=True)
print (df)
0 1 2 3
0 Alabama 400 300 200
1 New York 400 200 100
2 Missouri 400 200 50
3 District of Columbia 450 100 250
我只想从本地主机访问
在创建仅本地主机的终结点时,除了检查IP是否存在之外还有其他可能性
hxxps://my-domain.com/local
| ::1
| localhost
吗?
还是HTTP Server(nginx)级别的一些技巧?
答案 0 :(得分:2)
有几种可能性:
ExecuteAsync
并检查功能标记(请参见Conditionally disable ASP.NET MVC Controller)答案 1 :(得分:0)
通常,不会。但是,我认为这并不是最好的计划。当您将某些事物公开时,您应该假设所有事物都是公开的。如果您不希望任何人访问某些内容,那么auth是您的答案。这也为您带来了更多的价值选择灵活性。无论需要与此API在本地进行通信的内容,不一定总是位于同一服务器上。如果您使用身份验证,则可以将其移动到任何地方而不会出现问题。否则,无论从长远来看最终是否有意义,它都将卡在同一台服务器上。
您的下一个最佳选择是分离功能,并在内部托管仅限内部使用的内容。试图使一个API可以同时服务于内部请求和外部请求,只会增加不必要的复杂性。