我正在尝试使PHP SNMP在XAMPP PHP 7.1.9上运行
我总是得到以下结果:public class UploadModel
{
public List<IFormFile> Files { get; set; }
public string OtherProperty { get; set; }
}
这就是我所做的:
我要测试的代码:
[HttpGet]
public IActionResult Upload()
{
return View(new UploadModel());
}
[HttpPost]
public async Task<IActionResult> Index(UploadModel model)
{
var otherProperty = model.OtherProperty;
var files = new Dictionary<string, string>();
foreach (IFormFile file in model.Files)
{
using (var reader = new StreamReader(file.OpenReadStream()))
{
string content = await reader.ReadToEndAsync();
files.Add(file.Name, content);
// Available file properties:
// file.FileName
// file.ContentDisposition
// file.ContentType
// file.Headers
// file.Length
// file.Name
// You can copy file to other stream if needed:
// file.CopyTo(new MemoryStream()...);
}
}
}
我对此并不陌生,所以我不确定自己缺少什么。
答案 0 :(得分:0)
问题出在MIBDIRS路径上。
我关注了php文档,并说:
The Windows distribution of Net-SNMP contains support files for SNMP in the mibs directory. This directory should added to Windows' environment variables, as MIBDIRS, with the value being the full path to the mibs directory: e.g. c:\usr\mibs.
问题是我在net-snmp安装上找不到c:\usr\mibs
,所以我改用C:\usr\share\snmp\mibs
。
解决方案:
我尝试使用支持snmp的设备代替127.0.0.1,并在cli上运行snmpget
,并确认net-snmp安装确实有效。我认为问题一定出在php用于运行snmp的路径上。
所以我用where snmpget
检查了命令路径,然后更改了MIBDIRS环境值,结果为C:\usr\bin\snmpget.exe