0

我目前正在尝试从 C# 中的 CoAP 开始。我正在使用的库是 CoAP.Net(→ https://github.com/smeshlink/CoAP.NET)。

不幸的是,我什至没有成功使用 GitHub 上“快速入门”部分中发布的示例。

我的服务器代码:

class Program
{
    static void Main(string[] args)
    {
        CoapServer server = new CoapServer();
        server.Add(new HelloWorldRessouce());
        server.Start();
    }
}

和服务器解决方案中的资源类:

class HelloWorldRessouce : CoAP.Server.Resources.Resource
{
    public HelloWorldRessouce() : base("hello-world")
    {
        Attributes.Title = "GET a friendly greeting!";
    }

    protected override void DoGet (CoapExchange exchange)
    {
        exchange.Respond("Hello World fron CoAP.NET!");
    }
}

在客户端,我有以下内容:

    static void Main(string[] args)
    {
        CoapClient client = new CoapClient();

        Request request = new Request(Method.GET);
        //request.URI = new Uri("coap://[::1]/hello-world");
        request.URI = new Uri("coap://192.168.178.48:5683/hello-world");
        request.Send();

        // wait for response
        Response response = request.WaitForResponse();
    }

这是来自服务器的控制台输出:

调试 - 启动 CoAP 服务器

调试 - BlockwiseLayer 使用 MaxMessageSize: 1024 和 DefaultBlockSize:512

DBEEG - 起始端点绑定到 [::ffff:0:0]:5683

按任意键...

这是来自客户端的控制台输出: 控制台输出 - 客户端

我很确定,问题出在客户端...

如果有人帮助我运行这个示例,那就太棒了。或者,也许有人可以给我一些 Noob-Examples。示例文件并不能真正帮助我解决这个问题......

谢谢大家...干杯,米尔科

4

1 回答 1

0

好吧,好像有最笨的用户在工作……^^

服务器端:

static void Main(string[] args)
{
    CoapServer server = new CoapServer();
    server.Add(new HelloWorldRessouce());
    server.Start();
}

在“server.Start();”之后 程序完成,服务器关闭。

通过添加“Console.ReadKey();” 之后,一切都很好。

如果有人有任何关于配置的菜鸟示例,他们仍然很感激。

谢谢大家 ;)

于 2017-07-24T08:34:27.263 回答