小编the*_*ter的帖子

无法选择自定义SSL证书(存储在AWS IAM中)

我将在CloudFront上创建一个新的发行版.我已经使用AWS CLI在AWS IAM上传了我的SSL证书.该证书显示在新分发页面上的"自定义SSL证书"下拉列表中,但它已禁用.

有人能告诉我为什么会这样吗?如何为此发行版选择我的自定义SSL证书?

ssl amazon-web-services amazon-cloudfront amazon-iam aws-cli

79
推荐指数
8
解决办法
3万
查看次数

修复CURL(51)SSL错误:没有替代证书主题名称匹配

我是CURL世界的新手,来自Windows + .NET域.

尝试访问Rest API以进行基本身份验证,网址http://www.evercam.io/docs/api/v1/authentication.

curl -X GET https://api.evercam.io/v1/... \
-u {username}
Run Code Online (Sandbox Code Playgroud)

成功完成CURL后,不知道如何在Windows命令提示符下使用此命令.经过测试的CURL如下:

C:\>curl --version
curl 7.33.0 (x86_64-pc-win32) libcurl/7.33.0 OpenSSL/0.9.8y zlib/1.2.8 libssh2/1.4.3
Protocols: dict file ftp ftps gopher http https imap imaps pop3 pop3s rtsp scp s
ftp smtp smtps telnet tftp
Features: AsynchDNS GSS-Negotiate Largefile NTLM SSL SSPI libz
Run Code Online (Sandbox Code Playgroud)

现在我以此结束

C:\>curl -u myuser:mypassword -X GET https://api.evercam.io/v1/
curl: (51) SSL: no alternative certificate subject name matches target host name 'api.evercam.io'
Run Code Online (Sandbox Code Playgroud)

如何修复此SSL问题51错误?

ssl https curl

58
推荐指数
4
解决办法
12万
查看次数

41
推荐指数
1
解决办法
2万
查看次数

使用MongoDB而不是MS SQL Server的优点和缺点

我是NoSQL世界的新手,并且正在考虑将我的MS Sql Server数据库替换为MongoDB.我的应用程序(用.Net C#编写)与IP摄像头交互,并将来自Camera的每个图像的元数据记录到MS SQL数据库中.平均而言,我每天为每个摄像机插入大约86400条记录,在当前的数据库模式中,我为单独的摄像机图像创建了单独的表,例如Camera_1_Images,Camera_2_Images ... Camera_N_Images.单个图像记录由简单的元数据信息组成.像AutoId,FilePath,CreationDate.为了向此添加更多详细信息,我的应用程序为每个摄像头启动单独的进程(.exe),每个进程在数据库的相对表中每秒插入1条记录.

我需要(MongoDB)专家就以下问题提出建议:

  1. 判断MongoDB是否适合保存这些数据,最终将根据时间范围查询(例如,在指定的小时内检索特定摄像机的所有图像)?关于我的案例的基于文档的架构设计的任何建议?

  2. 什么应该是服务器(CPU,RAM,磁盘)的规格?有什么建议吗?

  3. 我应该考虑为这种情况进行分片/复制(同时考虑写入同步副本集的性能)吗?

  4. 在同一台机器上使用多个数据库有什么好处,因此一个数据库将保存所有摄像机的当前图像,第二个数据库将用于存档前一天的图像?关于在不同的数据库上拆分读写,我正在考虑这个问题.因为所有读取请求可能由第二个数据库提供并写入第一个数据库.它会受益吗?如果是,那么任何想法都要确保两个数据库始终同步.

欢迎任何其他建议.

sql schema mongodb

34
推荐指数
1
解决办法
5万
查看次数

解析json字符串以查找和元素(键/值)

我在文件timezones.json中跟随json:

  { "Atlantic/Canary": "GMT Standard Time", "Europe/Lisbon": "GMT Standard Time", 
"Antarctica/Mawson": "West Asia Standard Time", "Etc/GMT+3": "SA Eastern Standard Time", 
"Etc/GMT+2": "UTC-02", "Etc/GMT+1": "Cape Verde Standard Time", "Etc/GMT+7": "US Mountain 
Standard Time", "Etc/GMT+6": "Central America Standard Time", "Etc/GMT+5": "SA Pacific 
Standard Time", "Etc/GMT+4": "SA Western Standard Time", "Pacific/Wallis": "UTC+12", 
"Europe/Skopje": "Central European Standard Time", "America/Coral_Harbour": "SA Pacific 
Standard Time", "Asia/Dhaka": "Bangladesh Standard Time", "America/St_Lucia": "SA Western 
Standard Time", "Asia/Kashgar": "China Standard Time", "America/Phoenix": "US Mountain 
Standard Time", "Asia/Kuwait": "Arab Standard …
Run Code Online (Sandbox Code Playgroud)

c# parsing json.net

25
推荐指数
2
解决办法
8万
查看次数

以swagger json格式生成WebAPI文档

我使用.Net 4.5创建了一个WebAPI,并希望使用Swagger记录此API .我在我的.Net项目中添加了swagger-ui.现在,当我浏览到../swagger-ui/index.html时,它以swagger UI格式成功打开宠物商店api-docs(json).

我的问题是如何为我的WebAPI控制器和模型创建这样的(swagger)json?因为我已经为c#类和属性添加了必需的XML摘要/注释.

我看到Swagger.NetSwashbuckle在做类似的事情,但我真的不明白如何使用它们中的任何一个生成swagger-json文件.我可能会犯很小的错误,但无法指出.

请帮忙.

json api-doc asp.net-web-api swagger

17
推荐指数
2
解决办法
2万
查看次数

ASP.NET WebAPI基本身份验证始终失败为401/Unauthorized

尝试使用基本身份验证来保护我的ASP.NET Web API-2,但它始终以错误结束:

401/Unauthorized
Authorization has been denied for this request.
Run Code Online (Sandbox Code Playgroud)

下面是我的控制器和ajax请求代码片段以及请求和响应标头.

BasicAuthenticationHandler.SendAsync始终成功运行直到:

return base.SendAsync(request, cancellationToken);
Run Code Online (Sandbox Code Playgroud)

问:那么为什么它最终成为401 /未授权?

如果我从控制器操作中删除[授权],那么它可以工作,但没有任何安全性.

注意:因为这是跨域请求,所以我在服务器端启用了CORS.

我的验证处理程序

protected override System.Threading.Tasks.Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, System.Threading.CancellationToken cancellationToken)
{
    var principal = Thread.CurrentPrincipal;
    if (principal.Identity.IsAuthenticated)
    {
        return base.SendAsync(request, cancellationToken);
    }

    var encryptedTicket = ExtractToken(request.Headers.Authorization); // simply returns a string
    if (encryptedTicket != null)
    {
        var ticket = FormsAuthentication.Decrypt(encryptedTicket);
        var serializer = new JavaScriptSerializer();
        var user = serializer.Deserialize<UserInfoModel>(ticket.UserData);

        if (user != null)
        {
            var identity = new GenericIdentity(user.UserName, "Basic");
            Thread.CurrentPrincipal …
Run Code Online (Sandbox Code Playgroud)

c# authentication authorization cors asp.net-web-api

9
推荐指数
2
解决办法
2万
查看次数

使用 JSON / HTTP / REST 接口查询 MongoDB

我正在构建一个 ASP.Net Web 应用程序,并希望从 MongoDB(远程托管)访问数据。我的任何文档都看起来像这样(已确保 Utc 字段上的索引);

{ 
   "_id" : { "$oid" : "509501393e8785025c10bc21" }, 
   "Index" : 1,
   "Url" : "http:...", 
   "CameraId" : 123,  
   "Utc" : { "$date" : 1351955858006 } 
}
Run Code Online (Sandbox Code Playgroud)

考虑到用户端的性能,我想以最大速度获取这些数据。我尝试过的一种选择是通过 Page.aspx 上的 JSON 调用本地 Web 服务,该服务使用 MongoDB C# 驱动程序来查询两个日期 (Utc) 之间的文档。这可行,但似乎使用 Web 服务会在请求/响应周期中增加一些额外的毫秒数(使用 db.foo.findOne() 对单个文档的请求平均需要 1.3 秒)。该集合中的平均文档数量为 50,000 个,预计将增加到 30,00,000 个。

我的问题是:

  1. 我是否正确地说使用网络服务会在请求/响应周期中增加一些延迟(毫秒)?(因为MongoDB实际上需要几毫秒才能完成查询)
  2. 第二个选项是使用 MongoDB 的HTTP/REST 接口。这样我就可以避免 Web 服务并直接查询 MongoDB。在这里我需要你的意见,
    • 有没有办法使用 HTTP/REST 查询两个日期之间的 MongoDB?
    • 有没有办法使用 HTTP/REST 通过“>”和“<”条件查询 MongoDB?
    • 从安全角度来看,直接在 Page.aspx 上访问数据库看起来怎么样?
  3. 对于上述模式还有其他查询替代或优化吗?

我的相关问题在这里。 …

rest datetime json mongodb

5
推荐指数
1
解决办法
1万
查看次数

MongoDB将文档预加载到RAM中以获得更好的性能

我希望MongoDB将查询结果保存在RAM中更长的时间(如果内存可用,则说30分钟).可能吗?或者有什么方法可以确保在后续查询之前将数据预先加载到RAM中.

事实上,我想知道MongoDB的简单查询结果.我有一个10GB RAM的专用服务器,我的db.stats()如下所示;

db.stats();
{
    "db": "test",
    "collections":16,
    "objects":625690,
    "avgObjSize":68.90,
    "dataSize":43061996,
    "storageSize":1121402888,
    "numExtents":74,
    "indexes":25,
    "indexSize":28207200,
    "fileSize":469762048,
    "nsSizeMB":16,
    "ok":1
}
Run Code Online (Sandbox Code Playgroud)

现在,当我从Web服务查询单个文档(如此处所述)时,它将在1.3秒内加载.后续调用相同的查询会在400毫秒内给出响应,然后在几秒钟之后,它再次开始耗时1.3秒.看起来MongoDB已经从Memory中丢失了先前查询的文档,因为没有其他查询要求将数据映射到RAM.

请解释一下,让我知道如何使后续查询更快地响应.

memory performance document preload mongodb

5
推荐指数
1
解决办法
8003
查看次数

如何将 JSON 响应映射到自定义类对象

我正在使用unirest.io在 C# 中调用 API 。我得到以下 JSON 响应(作为response.Body)。

{
    "persons": [{
        "id": "a010",
        "name": "Joe",
        "subjects": [
            "Math",
            "English"
        ]
    },
    {
        "id": "b020",
        "name": "Jill",
        "subjects": [
            "Science",
            "Arts"
        ]
    }]
}
Run Code Online (Sandbox Code Playgroud)

我尝试将其映射到我的自定义类对象,如下所示。

HttpRequest request = Unirest.get(API_V1_URL).header("accept", "application/json");
HttpResponse<string> response = request.asString();
var serializer = new JavaScriptSerializer();
persons = serializer.Deserialize<Persons>(response.Body);
Run Code Online (Sandbox Code Playgroud)

但它总是通过设置people.infos = NULL ;

我的自定义类

public class Persons
{
    public PersonInfo[] infos;
}

public class PersonInfo
{
    public string id;
    public string name;
    public string[] …
Run Code Online (Sandbox Code Playgroud)

c# json jsonserializer unirest

4
推荐指数
1
解决办法
1万
查看次数

在MongoDB中拥有大量集合(需要架构设计建议)

我正在考虑使用MongoDB来保存从100台摄像机录制的图像元数据,并且每台摄像机的记录将保留30天.如果一台摄像机每天提供100,000张图像,那么我将在MongoDB中以最大值保存(100 x 30 x 100000)个图像(文档).我的Web应用程序将查询此数据为:

选择摄像机>选择日期>选择小时>获取该小时内的所有图像.

我计划用以下三个选项设计模式,并需要您的专家意见/建议以获得最佳出路;

1)按小时收集:创建72000个MongoDB集合,即每个摄像机每小时收集1个(100个摄像机X 30天X 24小时)(使用--nssize 500命令超过24000个限制).我担心如果MongoDB允许我创建这么多的集合,其次是在阅读和写入这些集合时预期的性能优势和损失.虽然,对于每小时读取图像看起来非常容易使用此模式,因为我可以在单个查询中将数据提取到任何集合.

2)日常收藏:创建3000个MongoDB收藏,即每个摄像机每天1个收集(100个摄像机X 30天).虽然这是允许的,并且看起来收集的数量很多,但我关心的是从特定日期内的特定时间内阅读图像.

3)逐照摄像机集合:创建100个MongoDB集合,即每个摄像机1个集合(100个摄像机/集合).然后以(20141122061055000)格式保存具有唯一"id"的快照,这是对完整日期时间戳的重新描述(2014-11-22 06:10:55.000).

我希望,如果理想情况下我可以做(1),(2)或(3),但欢迎任何其他选择.

考虑到我的情况,请建议我对MongoDB的选择.

问候.

mongodb nosql

2
推荐指数
1
解决办法
5104
查看次数