android访问api的ip在哪,api如何获取请求的ip地址

在.net core 里应该怎么用呢?

.net Core 没有 Request 的属性...

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:04

@临冰听雪丶: 这个就是在.netcore2.1里的代码

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:05

@临冰听雪丶: 或者试一下 HttpContext.Request.Host

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:06

@老六代码: 类型“HttpContext”中不存在类型名“Request”

单独写也不行,我不知道是不是我少一个什么包。。。

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:09

@临冰听雪丶: 你直接写 HttpContext.Request.Host 编译出错吗?有可能编译不出错,只是Vs提示有问题

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:11

@临冰听雪丶: 不会少什么包的,这是HttpContext的一个属性

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:12

@老六代码: 直接编译不通过

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:14

@临冰听雪丶: 是.netcore的webapi还是其他的项目类型?

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:15

@老六代码: .net core 的webapi

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:20

@临冰听雪丶:在控制器里是可以直接获取到Request或者HttpContext.Request。你可以把代码贴出来

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:23

@老六代码: 我加了一个

private IHttpContextAccessor _accessor;

然后单独写的时候,

var host = HttpContext.Request.Host;

它会报错

对象引用对于非静态的字段、方法或属性“HttpContext.Request”是必需的

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:33

@老六代码: 在我没有加

private IHttpContextAccessor _accessor;

然后如果我这样写的话

var result = _accessor.HttpContext.Request.Host;

就直接给我返回了一个Html页面...

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 10:35

@临冰听雪丶:

如果你是在startup里注入IHttpContextAccessor 的话,

public void ConfigureServices(IServiceCollection services)

{

services.AddSingleton();

services.AddMvc();

}

那么你可以这样获取

private IHttpContextAccessor _accessor;

public ValuesController(IHttpContextAccessor accessor)

{

_accessor = accessor;

}

// GET api/values

[HttpGet]

public IEnumerable Get()

{

var ip = _accessor.HttpContext.Request.Host.Value;

return new string[] { ip };

}

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 10:42

@老六代码: 本地的可以获取到了,等可以发布到服务器上的时候再试试,谢谢您啦~

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-23 11:27

@临冰听雪丶: 可以就好 微软大法好

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-23 11:32

@老六代码: 今天发布上去了依然不行,获取到的值是 导航栏里的值。。

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-26 16:11

@临冰听雪丶: 你不是要获取地址栏的地址吗

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-26 16:12

@临冰听雪丶: 服务器地址获取方法

// GET api/values

[HttpGet]

public ActionResult> Get()

{

var ip = HttpContext.Connection.LocalIpAddress;

var port = HttpContext.Connection.LocalPort;

return new string[] { ip.ToString(), port.ToString() };

}

chesterdotchen

|

园豆:505

(小虾三级)

|

2018-11-26 16:14

@老六代码: 用 RemoteIpAddress 取到了

LocalIpAddress 取到的好像是主机的地址 127.0.0.1

嘿嘿,谢谢您啦~

临冰听雪丶

|

园豆:4

(初学一级)

|

2018-11-26 16:31

你可能感兴趣的:(android访问api的ip在哪,api如何获取请求的ip地址)