MQTT心跳包发送是否成功

图片说明

在路由器抓包的数据如上图所示:
MQTT正常保持长连接是一对pingreq和pingresp。
但是某一时刻只有pingreq,并未收到服务器返回的心跳回复。从而客户端判断回复超时,重新建链。

疑问:
1. 最后一条pingreq能确认是客户端数据发送到了路由器?
2. 云端没有回复原因:可能是数据由路由转发到外网的时候,由于网络抖动丢失了,导致云端没有收到pingreq?

1个回答

1.查看子网IP发送到外网IP这条附近,应该有网关IP发送到同一个外网IP的MQTT Broker地址。 从而确认终端是发送到了路由器,并且路由器往外网发送了。
2.过滤路由器网关的ip和mqtt协议查看在最后一条req请求附近是否有mqtt broker回复到路由的pingresp。 若没有,这说明消息在路由和云服务器直接丢失了

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!
其他相关推荐
有大神在安卓上集成过Mqtt吗?既然Mqtt断线后可以重连,那么发送心跳还有什么意义呢?

发送心跳是为了与服务器保持通讯,让链路不被断开,但Mqtt可以监听断线,断线后执行connetionLost方法,可以在这个方法中进行重连操作,既然可以监听到断线,感觉发心跳就没有意义了,断线后重连就行了,发送心跳还会唤醒CPU,耗电.. 现在我的项目就使用到Mqtt实现推送,我查了相关资料,比如微信,它是4分半钟发送一次心跳,而我现在的项目,心跳时间也设置成了4分半,但是一次连接基本上只能维持一两分钟,根本就发不了心跳..如果将心跳设置成1分钟,那电量刷刷的掉....我不发送心跳,断开后重连,也能一直保持连接啊,也能一直收到消息啊...

MQTT发布的返回值int类型,怎么判断它是否发布成功

MQTT发布的返回值类型怎么判断,难道是大于一的就发布成功,小于1的就发布失败么。发布完之后,怎么拿到他的主题。是直接MQTT对象 点它的主题属性出来么?? 还有的就是订阅的时候怎么显示订阅主题的内容出来尼

安卓使用MQTT向服务器发送请求

百度出的内容全都是一堆乱七八糟的写法(类似订阅主题之类的,看着看着就不懂了),没有找到面向新手的代码,想问一下大佬有没有单独的只发送数据部分的代码(要能运行的那种)。 目前已经有服务器了,只是不知该如何发送。

请问如何实现c语言编写MQTT发送消息至EMQ?

(刚开始接触这个方面,什么经验都没有,希望大家帮帮忙,谢谢) 1.我已经安装好了VS2013; 2.我参考的网址是 ①https://blog.csdn.net/vincent_yuan89/article/details/84306001#commentBox ②https://blog.csdn.net/qingdujun/article/details/71055759 3.目前遇到的问题是不知道怎么安装(https://github.com/eclipse/paho.mqtt.c/tree/v1.3.0)上的paho c库,以及如何导入vs。 4.之后的步骤也不是很清楚,比如vs新建项目应该是什么种类? 谢谢!

如何检查我与mqtt代理的连接是否断开?

<div class="post-text" itemprop="text"> <p>我正在尝试使用<a href="https://github.com/eclipse/paho.mqtt.golang" rel="nofollow noreferrer">paho</a> pkg来通过golang构建MQTT子客户端,当代理断开连接时,我的客户端就会出现问题,我一开始以为会出现丢失的消息,但这种情况并没有发生,启动代理后,MQTT子客户端却无法获得由MQTT PUB客户端发送的消息。</p> <p>为什么会发生这种事,我怎么才能解决呢?</p> <p>代码:</p> <pre><code>package main import ( "fmt" "os" mqtt "github.com/eclipse/paho.mqtt.golang" ) var ( broker = "tcp://localhost:1883" f mqtt.MessageHandler = func(client mqtt.Client, msg mqtt.Message) { fmt.Printf("TOPIC: %s ", msg.Topic()) fmt.Printf("MSG: %s ", msg.Payload()) } ) func main() { //create a ClientOptions opts := mqtt.NewClientOptions().AddBroker(broker) opts.SetClientID("group-one") opts.SetDefaultPublishHandler(f) //create and start a client using the above ClientOptions c := mqtt.NewClient(opts) if token := c.Connect(); token.Wait() &amp;&amp; token.Error() != nil { panic(token.Error()) } if token := c.Subscribe("test", 0, nil); token.Wait() &amp;&amp; token.Error() != nil { fmt.Println(token.Error()) os.Exit(1) } for { } } </code></pre> </div>

Golang中的mqtt客户端偶尔断开连接

<div class="post-text" itemprop="text"> <p>I am using paho mqtt client in GO to connect to a broker. Everything works fine for a while, in which I can publish to topics and listen to any subscription. After a while the client loses connection to the broker, for no apparent reason with this log:</p> <pre><code>[MQTT] ERROR: 2018/09/04 17:31:30 [net] outgoing stopped with error write tcp IP1 -&gt; IP2: write: broken pipe [MQTT] ERROR: 2018/09/04 17:31:30 [net] logic received from error channel, other components have errored, stopping </code></pre> <p>I am connecting to the broker like this:</p> <pre><code>opts := mqtt.NewClientOptions(). AddBroker(broker). SetClientID(fmt.Sprintf("%s-%v", ProgramName, time.Now().Unix())). SetUsername(username). SetPassword(password). SetOrderMatters(true) if tlsConfig != nil { opts.SetTLSConfig(tlsConfig) } pahoClient := mqtt.NewClient(opts) client = &amp;DefaultMQTTClient{ c: pahoClient, subscribeQoS: subscribeQoS, publishQoS: publishQoS, name: name, log: Log.WithPrefix("mqtt").WithFields(logrus.Fields{ "name": name, "broker": broker, }), } client.Log().Debug("connecting to mqtt broker") if err = client.Connect(); err != nil { err = client.Log().Trace(err, "failed to connect to mqtt broker") return } client.Log().Info("established connection with mqtt broker") </code></pre> <p>And the version of paho that I am using is 1.0.0. Any hint is welcome!</p> </div>

android 端,使用Mqtt反复断链重连

在Mqtt连接成功之后,去订阅话题,但是在订阅话题执行之后, Mqtt的状态就断开了,然后会重新连接。然后就这样反复的连接-订阅-断开-连接, 有没有遇到类似的问题,是怎么没解决的?

设备发送了数据到mqtt服务器,那mqtt服务器怎么将数据转发到后台系统,进行展示呢?

自己搭建了MQTT服务器,采集的设备数据,怎么在后台web页面展示,刚入物联网,请多多指教

Android mqtt与服务器连接上,服务器发送消息,Android客户端接收不到

Messages Dequeued一直不变,在Android里用publish方法能接收到信息

使用PHP在Laravel上使用mqtt

<div class="post-text" itemprop="text"> <p>I'm using the MQTT on my raspberry and on my Ubuntu. I use terminal for start subscriber and publisher and it works so good. But now I want to create a website (using laravel) with this features. I googled it, but I don't find anything interesting. Is it possible to do and how?</p> </div>

尝试使用AWS IoT通过Laravel应用程序发送MQTT消息

<div class="post-text" itemprop="text"> <p>I've developed a web application using Laravel (PHP) and now I'm trying to communicate it with a IoT device (Rasberry Pi). </p> <p>The idea is: when clicking a button, the application will send a MQTT message to the IoT device to start recording the data from a sensor and store it in a SD Card. When clicking again the button, it will send another MQTT message to the IoT device so it will stop recording.</p> <p>Must say I'm just starting to learn how to use the Amazon Web Services IoT platform but I've reached to communicate the raspberryPi with my computer by using one of the examples of the python SDK using python script in both devices.</p> <p>So we could say, I have now a python script that listens to a topic installed in the raspberry Pi. I parse the message and then do the following actions.</p> <p>I'm trying now, then, to do the same but calling it from the Laravel application. So, my code looks like this:</p> <p><strong>Button HTML code</strong></p> <pre><code>&lt;button type="button" id="start-button" class="btn btn-outline-success btn-lg" onclick="startRecording()"&gt;&lt;i class="fas fa-play-circle"&gt;&lt;/i&gt; Start recording&lt;/button&gt; </code></pre> <p><strong>Javascript</strong></p> <pre><code>&lt;script src="{{ asset('js/mqttws31.min.js') }}"&gt;&lt;/script&gt; &lt;script&gt; function startRecording(){ MQTTconnect(); } var mqtt; var reconnectTimeout = 2000; var host = "xxxxxxxxx.iot.eu-west-1.amazonaws.com"; var port = 443; function onConnect(){ //Once a connection has been made, make a subscription and send a message. console.log("Connected"); //mqtt.subscribe("VaultingTable1"); message = new Paho.MQTT.Message("Hello World"); message.destinationName = "myDevice1"; mqtt.send(message); } function MQTTconnect(){ console.log("connecting to "+ host + " " + port); mqtt = new Paho.MQTT.Client(host, port, "myDevice1"); var options ={ timeout : 3, onSuccess : onConnect, }; mqtt.connect(options); //connect } </code></pre> <p>In this case I get this error:</p> <pre><code>WebSocket connection to 'ws://xxxxxxxxx.iot.eu-west-1.amazonaws.com:443/mqtt' failed: Error during WebSocket handshake: net::ERR_INVALID_HTTP_RESPONSE </code></pre> <p>Can anyone help me how to reach it?</p> <p>Thanks!</p> </div>

使用fusesource的mqtt-client-1.7-uber.jar,mqtt发布消息出去,接收端看到的是中文乱码

现在在做给腾讯云发布消息的mqtt,但是传送消息过去发现中文会乱码,那边说是UTF-8编码,我使用的就是UTF-8,可是就是不行。 我使用的是fusesource的mqtt-client-1.7-uber.jar,传递消息的byte数组是这么转换的: data是String类型 data.getBytes("UTF-8") 求助,有大神知道怎么解决吗?

ActiveMQ和MQTT有什么联系呢?

我用过ActiveMQ知道可以作点对点通信或订阅/发布式的通信,但是涉及到Android推送的时候为什么是ActiveMQ和MQTT一起用了呢?有什么联系吗?各起什么作用?谢谢

xmpp长连接,由于心跳包客户端没有收到,所以服务器断开长连接,有什么优化的方法吗?

当然可以在客户端记录每个心跳包的时间,超过一定的时间没有收到服务器的心跳包,则重新连接服务器。但是感觉不是很好,有没更好的优化长连接的方法。

保持MQTT Go客户端运行

<div class="post-text" itemprop="text"> <p>I think it is a silly question, I need a MQTT Client to keep running after connection and subscription. I never encountered the problem because my MQTT clients are always coupled with an HTTP server, and when launching a HTTP server, the code don't stop running. </p> <p>But in the present use case I only need a MQTT Client to subscribe to some topic and stay alive.</p> <p>Here is what I do (the function just connect to a broker and subcribe to one topic.)</p> <pre class="lang-golang prettyprint-override"><code>func main() { godotenv.Load("./.env") _initMqttConnection() } </code></pre> <p>I need the client to stay connected and not stop just after the subscription is done. </p> <p>How to perform that simple thing ?</p> <p>Edit 1 : Complete Code </p> <p></p><div class="snippet" data-lang="js" data-hide="false" data-console="true" data-babel="false"> <div class="snippet-code"> <pre class="snippet-code-js lang-js prettyprint-override"><code>package main import ( "encoding/json" "fmt" "log" "net/http" "os" "path/filepath" "strings" "github.com/yosssi/gmq/mqtt" "github.com/yosssi/gmq/mqtt/client" "github.com/joho/godotenv" "github.com/skratchdot/open-golang/open" ) var cli *client.Client func _initMqttConnection() { cli = client.New(&amp;client.Options{ ErrorHandler: func(err error) { fmt.Println(err) }, }) defer cli.Terminate() log.Println("Connecting to " + os.Getenv("mqtt_host")) err := cli.Connect(&amp;client.ConnectOptions{ Network: "tcp", Address: os.Getenv("mqtt_host"), UserName: []byte(os.Getenv("mqtt_user")), Password: []byte(os.Getenv("mqtt_password")), ClientID: []byte("mqtt_video_launcher"), }) if err != nil { log.Println("Error 1") panic(err) } log.Println("Connected to MQTT") topic_to_sub := []byte("/" + os.Getenv("video_topic")) err = cli.Subscribe(&amp;client.SubscribeOptions{ SubReqs: []*client.SubReq{ &amp;client.SubReq{ TopicFilter: topic_to_sub, QoS: mqtt.QoS0, Handler: func(topicName, message []byte) { //do struff with message fmt.Println(string(topicName), string(message)) }, }, }, }) if err != nil { panic(err) } log.Println("Subscription OK : " + string(topic_to_sub[:len(topic_to_sub)])) } func main() { godotenv.Load("./.env") _initMqttConnection() }</code></pre> </div> </div> <p>The temporary solution I use is adding : </p> <pre><code>http.ListenAndServe(":", nil) </code></pre> <p>at the end. </p> </div>

保持MQTT客户端连接始终处于活动状态

<div class="post-text" itemprop="text"> <p>I am using <code>CloudMQTT</code> as a <code>MQTT broker</code> in my Pub-Sub based application. I am using my <code>publisher</code> to publish data to the <code>CloudMQTT server</code> over a <code>topic</code>, and I plan to <code>subscribe</code> to the broker on my webpage to recieve the transmitted information.</p> <p>I am using this procedure to create a <code>Client</code>(subscriber): <a href="https://www.cloudmqtt.com/docs-php.html" rel="nofollow">https://www.cloudmqtt.com/docs-php.html</a></p> <p>Code goes as follows:</p> <pre><code>// subscribe.php require("phpMQTT.php"); $host = "hostname"; $port = port; $username = "username"; $password = "password"; $mqtt = new phpMQTT($host, $port, "ClientID".rand()); if(!$mqtt-&gt;connect(true,NULL,$username,$password)){ exit(1); } //currently subscribed topics $topics['topic'] = array("qos"=&gt;0, "function"=&gt;"procmsg"); $mqtt-&gt;subscribe($topics,0); while($mqtt-&gt;proc()){ } $mqtt-&gt;close(); function procmsg($topic,$msg){ echo "Msg Recieved: $msg"; } </code></pre> <p>Here is the <code>phpMQTT.php</code> file: <a href="https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php" rel="nofollow">https://github.com/bluerhinos/phpMQTT/blob/master/phpMQTT.php</a></p> <p>However, the issue in this case is that it recieves data only when the webpage is open.. I want to keep the connection alive even if the webpage is not open to always recieve published messages, how can I do it?</p> <p><strong>EDIT :</strong> I might be open to using some other technology on the server to handle this subscription process, if anyone can recommend some alternatives</p> </div>

MQTT的报文标识符, 如何理解

很多控制报文的可变报头部分包含一个两字节的报文标识符字段。这些报文是 PUBLISH(QoS > 0时), PUBACK,PUBREC,PUBREL,PUBCOMP,SUBSCRIBE, SUBACK,UNSUBSCIBE,UNSUBACK。 SUBSCRIBE,UNSUBSCRIBE和PUBLISH(QoS大于0)控制报文必须包含一个非零的16 位报文标识符(Packet Identifier)[MQTT-2.3.1-1]。客户端每次发送一个新的这些类型的报文 时都必须分配一个当前未使用的报文标识符 [MQTT-2.3.1-2]。如果一个客户端要重发这个特 殊的控制报文,在随后重发那个报文时,它必须使用相同的标识符。当客户端处理完这个报 文对应的确认后,这个报文标识符就释放可重用。QoS 1的PUBLISH对应的是PUBACK, QoS 2的PUBLISH对应的是PUBCOMP,与SUBSCRIBE或UNSUBSCRIBE对应的分别是 SUBACK或UNSUBACK [MQTT-2.3.1-3]。发送一个QoS 0的PUBLISH报文时,相同的条件也 适用于服务端 [MQTT-2.3.1-4]。 QoS等于0的PUBLISH报文不能包含报文标识符 [MQTT-2.3.1-5]。 PUBACK, PUBREC, PUBREL报文必须包含与最初发送的PUBLISH报文相同的报文标识符 [MQTT-2.3.1-6]。类似地,SUBACK和UNSUBACK必须包含在对应的SUBSCRIBE和 UNSUBSCRIBE报文中使用的报文标识符 [MQTT-2.3.1-7]。 **1.所谓的报文标识符号,我暂且将其理解成ID, 上面各种报文,我可以理解成是信件 假设古代人行军打仗有各种信都是通过不同颜色的鸡毛来确定的。这个鸡毛的颜色就是标识符,这样理解对吗?是每一种的报文有自己单独的ID 还是每一种报文的每一次都要有不同的ID呢? 2. 为什么Qos0的时候不能有标识符号? 3. 我在规范中还看到一句话,“客户端发送标识符为0x1234的PUBLISH报文,它有可能会在收到那个报文的PUBACK之前, 先收到服务端发送的另一个不同的但是报文标识符也为0x1234的PUBLISH报文。” ID居然可以相同?实在是没有办法理解 **

使用Goroutine订阅MQTT不打印消息

<div class="post-text" itemprop="text"> <p>I currently have Go code that subscribes to a topic and prints out sensor data. The part that prints out the sensor data is in a <strong>Goroutine</strong>, however, nothing is printing out currently. This is my code: </p> <pre><code>package main import ( "fmt" MQTT "github.com/eclipse/paho.mqtt.golang" "os" "os/signal" "syscall" "sync" ) var wg sync.WaitGroup func subscriber(client MQTT.Client, message MQTT.Message) { wg.Add(1) go func() { defer wg.Done() fmt.Printf("%s ", message.Payload()) }() } func main() { c := make(chan os.Signal, 1) signal.Notify(c, os.Interrupt, syscall.SIGTERM) opts := MQTT.NewClientOptions().AddBroker("tcp://test.mosquitto.org:1883") //opts.SetDefaultPublishHandler(f) // Topic to subscribe to for sensor data topic := "sensor/data" client := MQTT.NewClient(opts) if token := client.Connect(); token.Wait() &amp;&amp; token.Error() != nil { panic(token.Error()) } else { fmt.Printf("Connected to server ") } opts.OnConnect = func(c MQTT.Client) { //if token := c.Subscribe(topic, 0, f); token.Wait() &amp;&amp; token.Error() != nil { if token := c.Subscribe(topic, 0, subscriber); token.Wait() &amp;&amp; token.Error() != nil { panic(token.Error()) } } wg.Wait() &lt;-c } </code></pre> <p>I'm wondering if it has to do with the way I coded the sync.WaitGroup? Any ideas are appreciated. </p> </div>

STM32+EC20 实现MQTT数据上传,发送一次数据后连接失败,原因?

void sendMQTTPkt(char *p, int len) { //char sendBuf[30] = {0}; char sendBuf[300] = {0}; char *strx,untildata; sprintf(sendBuf,"AT+QISEND=0,%d\r\n",len); USART2_Write(USART2,sendBuf,strlen(sendBuf));//固定长度发数据 delay_ms(100); strx=strstr((char*)RxBuffer,(char*)">");//返回数据可发送 while(strx==NULL) strx=strstr((char*)RxBuffer,(char*)">"); USART2_Write(USART2,p,len); delay_ms(100); } void Clear_Buffer(void)//清空缓存 { int i; //printf(RxBuffer); USART1_Write(USART1,RxBuffer,Rxcouter); memset(RxBuffer,0,Rxcouter); // for(i=0;i<Rxcouter;i++) // RxBuffer[i]=0;//缓存 Rxcouter=0; // IWDG_Feed();//喂狗 } sendMQTTPkt(mqtt_msg,len); delay_ms(1000); //delay_ms(1000); // MqttSample_Recv(); //对数据进行解析 if(uart2_ok)//确认数据都接收完成了 { printf("step1 OK\r\n"); //MQTTOnent_Recdata(); Clear_Buffer(); //MQTTClear_Buffer(); printf("step2 OK\r\n"); uart2_ok=0; printf("step3 OK\r\n"); } printf("step4 OK\r\n"); 串口显示:len:31 step1 OK > SEND OK +QIURC: "closed",0 step2 OK step3 OK step4 OK 提示close ,原因是什么

技术大佬:我去,你写的 switch 语句也太老土了吧

昨天早上通过远程的方式 review 了两名新来同事的代码,大部分代码都写得很漂亮,严谨的同时注释也很到位,这令我非常满意。但当我看到他们当中有一个人写的 switch 语句时,还是忍不住破口大骂:“我擦,小王,你丫写的 switch 语句也太老土了吧!” 来看看小王写的代码吧,看完不要骂我装逼啊。 private static String createPlayer(PlayerTypes p...

副业收入是我做程序媛的3倍,工作外的B面人生是怎样的?

提到“程序员”,多数人脑海里首先想到的大约是:为人木讷、薪水超高、工作枯燥…… 然而,当离开工作岗位,撕去层层标签,脱下“程序员”这身外套,有的人生动又有趣,马上展现出了完全不同的A/B面人生! 不论是简单的爱好,还是正经的副业,他们都干得同样出色。偶尔,还能和程序员的特质结合,产生奇妙的“化学反应”。 @Charlotte:平日素颜示人,周末美妆博主 大家都以为程序媛也个个不修边幅,但我们也许...

我说我不会算法,阿里把我挂了。

不说了,字节跳动也反手把我挂了。

抖音上很火的时钟效果

反正,我的抖音没人看,别人都有几十万个赞什么的。 发到CSDN上来,大家交流下~ 主要用到原生态的 JS+CSS3。 具体不解释了,看注释: &lt;!DOCTYPE html&gt; &lt;html lang="en"&gt; &lt;head&gt; &lt;meta charset="UTF-8"&gt; &lt;title&gt;Title&lt;/tit...

记录下入职中软一个月(外包华为)

我在年前从上一家公司离职,没想到过年期间疫情爆发,我也被困在家里,在家呆着的日子让人很焦躁,于是我疯狂的投简历,看面试题,希望可以进大公司去看看。 我也有幸面试了我觉得还挺大的公司的(虽然不是bat之类的大厂,但是作为一名二本计算机专业刚毕业的大学生bat那些大厂我连投简历的勇气都没有),最后选择了中软,我知道这是一家外包公司,待遇各方面甚至不如我的上一家公司,但是对我而言这可是外包华为,能...

培训班出来的人后来都怎么样了?(二)

接着上回说,培训班学习生涯结束了。后面每天就是无休止的背面试题,不是没有头脑的背,培训公司还是有方法的,现在回想当时背的面试题好像都用上了,也被问到了。回头找找面试题,当时都是打印下来天天看,天天背。 不理解呢也要背,面试造飞机,上班拧螺丝。班里的同学开始四处投简历面试了,很快就有面试成功的,刚开始一个,然后越来越多。不知道是什么原因,尝到胜利果实的童鞋,不满足于自己通过的公司,嫌薪水要少了,选择...

面试了一个 31 岁程序员,让我有所触动,30岁以上的程序员该何去何从?

最近面试了一个31岁8年经验的程序猿,让我有点感慨,大龄程序猿该何去何从。

大三实习生,字节跳动面经分享,已拿Offer

说实话,自己的算法,我一个不会,太难了吧

程序员垃圾简历长什么样?

已经连续五年参加大厂校招、社招的技术面试工作,简历看的不下于万份 这篇文章会用实例告诉你,什么是差的程序员简历! 疫情快要结束了,各个公司也都开始春招了,作为即将红遍大江南北的新晋UP主,那当然要为小伙伴们做点事(手动狗头)。 就在公众号里公开征简历,义务帮大家看,并一一点评。《启舰:春招在即,义务帮大家看看简历吧》 一石激起千层浪,三天收到两百多封简历。 花光了两个星期的所有空闲时...

推荐9个能让你看一天的网站

分享的这9个保证另你意外的网站,每个都非常实用!非常干货!毫不客气的说,这些网站最少值10万块钱。 利用好这些网站,会让你各方面的技能都得到成长,不说让你走上人生巅峰,但对比现在的你,在眼界、学识、技能方面都有质的飞跃。 一、AIRPANO 传送门:https://www.airpano.com/360photo_list.php 这是一个可以躺在家里,就能环游世界的神奇网站。 世界那么大,绝大多...

大牛都会用的IDEA调试技巧!!!

导读 前天面试了一个985高校的实习生,问了他平时用什么开发工具,他想也没想的说IDEA,于是我抛砖引玉的问了一下IDEA的调试用过吧,你说说怎么设置断点...

都前后端分离了,咱就别做页面跳转了!统统 JSON 交互

文章目录1. 无状态登录1.1 什么是有状态1.2 什么是无状态1.3 如何实现无状态1.4 各自优缺点2. 登录交互2.1 前后端分离的数据交互2.2 登录成功2.3 登录失败3. 未认证处理方案4. 注销登录 这是本系列的第四篇,有小伙伴找不到之前文章,松哥给大家列一个索引出来: 挖一个大坑,Spring Security 开搞! 松哥手把手带你入门 Spring Security,别再问密...

97年世界黑客编程大赛冠军作品(大小仅为16KB),惊艳世界的编程巨作

这是世界编程大赛第一名作品(97年Mekka ’97 4K Intro比赛)汇编语言所写。 整个文件只有4095个字节, 大小仅仅为16KB! 不仅实现了3D动画的效果!还有一段震撼人心的背景音乐!!! 内容无法以言语形容,实在太强大! 下面是代码,具体操作看最后! @echo off more +1 %~s0|debug e100 33 f6 bf 0 20 b5 10 f3 a5...

不要再到处使用 === 了

我们知道现在的开发人员都使用 === 来代替 ==,为什么呢?我在网上看到的大多数教程都认为,要预测 JavaScript 强制转换是如何工作这太复杂了,因此建议总是使用===。这些都...

什么是a站、b站、c站、d站、e站、f站、g站、h站、i站、j站、k站、l站、m站、n站?00后的世界我不懂!

A站 AcFun弹幕视频网,简称“A站”,成立于2007年6月,取意于Anime Comic Fun,是中国大陆第一家弹幕视频网站。A站以视频为载体,逐步发展出基于原生内容二次创作的完整生态,拥有高质量互动弹幕,是中国弹幕文化的发源地;拥有大量超粘性的用户群体,产生输出了金坷垃、鬼畜全明星、我的滑板鞋、小苹果等大量网络流行文化,也是中国二次元文化的发源地。 B站 全称“哔哩哔哩(bilibili...

十个摸鱼,哦,不对,是炫酷(可以玩一整天)的网站!!!

文章目录前言正文**1、Kaspersky Cyberthreat real-time map****2、Finding Home****3、Silk – Interactive Generative Art****4、Liquid Particles 3D****5、WINDOWS93****6、Staggering Beauty****7、Ostagram图片生成器网址****8、全历史网址*...

终于,月薪过5万了!

来看几个问题想不想月薪超过5万?想不想进入公司架构组?想不想成为项目组的负责人?想不想成为spring的高手,超越99%的对手?那么本文内容是你必须要掌握的。本文主要详解bean的生命...

大厂的 404 页面都长啥样?最后一个笑了...

每天浏览各大网站,难免会碰到404页面啊。你注意过404页面么?猿妹搜罗来了下面这些知名网站的404页面,以供大家欣赏,看看哪个网站更有创意: 正在上传…重新上传取消 腾讯 正在上传…重新上传取消 网易 淘宝 百度 新浪微博 正在上传…重新上传取消 新浪 京东 优酷 腾讯视频 搜...

自从喜欢上了B站这12个UP主,我越来越觉得自己是个废柴了!

不怕告诉你,我自从喜欢上了这12个UP主,哔哩哔哩成为了我手机上最耗电的软件,几乎每天都会看,可是吧,看的越多,我就越觉得自己是个废柴,唉,老天不公啊,不信你看看…… 间接性踌躇满志,持续性混吃等死,都是因为你们……但是,自己的学习力在慢慢变强,这是不容忽视的,推荐给你们! 都说B站是个宝,可是有人不会挖啊,没事,今天咱挖好的送你一箩筐,首先啊,我在B站上最喜欢看这个家伙的视频了,为啥 ,咱撇...

代码注释如此沙雕,会玩还是你们程序员!

某站后端代码被“开源”,同时刷遍全网的,还有代码里的那些神注释。 我们这才知道,原来程序员个个都是段子手;这么多年来,我们也走过了他们的无数套路… 首先,产品经理,是永远永远吐槽不完的!网友的评论也非常扎心,说看这些代码就像在阅读程序员的日记,每一页都写满了对产品经理的恨。 然后,也要发出直击灵魂的质问:你是尊贵的付费大会员吗? 这不禁让人想起之前某音乐app的穷逼Vip,果然,穷逼在哪里都是...

一场疫情,炸出了退休的COBOL程序员

COBOL编程语言,估计大多数程序员从没听说过,我这样的编程老司机,也是只闻其名,从未一睹芳容。出门问了问度娘,答案如下:COBOL语言,是一种面向过程的高级程序设计语言,主要用于数据...

爬虫(101)爬点重口味的

小弟最近在学校无聊的很哪,浏览网页突然看到一张图片,都快流鼻血。。。然后小弟冥思苦想,得干一点有趣的事情python 爬虫库安装https://s.taobao.com/api?_ks...

讲真,这两款idea插件,能治愈你英语不好的病

时不时就有小伙伴问我,“二哥,能推荐一款 IDE 吗?”你看这话问的,现在搞 Java 的不都在用 Intellij IDEA 吗,还用得着推荐(我已经和 Eclipse 分手了)。然后小伙伴又说,“二哥,IDEA 支持中文吗?我英语不太好。”你看这话问的,搞编程的,英语不好是硬伤啊! 不过,随着 IDEA 最新版(版本号是 2020.1)的发布,英语不好的病可以彻底治愈了。为什么这么说呢?因为 ...

在拼多多上班,是一种什么样的体验?我心态崩了呀!

之前有很多读者咨询我:武哥,在拼多多上班是一种什么样的体验?由于一直很忙,没抽出时间来和大家分享。上周末特地花点时间来写了一篇文章,跟大家分享一下拼多多的日常。 1. 倒时差的作息 可能很多小伙伴都听说了,拼多多加班很严重。这怎么说呢?作息上确实和其他公司有点区别,大家知道 996,那么自然也就能理解拼多多的“11 11 6”了。 所以当很多小伙伴早上出门时,他们是这样的: 我们是这样的: 当...

又一起程序员被抓事件

就在昨天互联网又发生一起让人心酸的程序员犯罪事件,著名的百度不限速下载软件 Pandownload PC 版作者被警方抓获。案件大致是这样的:软件的作者不仅非法盗取用户数据,还在QQ群进...

瑞德西韦重症用药结果再曝光,上百名重症一周内好转,股价大涨19%

郭一璞 发自 凹非寺量子位 报道 | 公众号 QbitAI期盼已久的瑞德西韦临床数据,现在“偷跑”了。在芝加哥大学医学院的临床试验中,125名病人参与,大部分人都已经出院,其中只有2名病...

应聘3万的职位,有必要这么刁难我么。。。沙雕。。。

又一次被面试官带到坑里面了。面试官:springmvc用过么?我:用过啊,经常用呢面试官:springmvc中为什么需要用父子容器?我:嗯。。。没听明白你说的什么。面试官:就是contr...

Vue商城——详情页功能

详情页实现思路 点击商品进去详情页,根据点击请求更加详细的信息,要传过来goodsItem的iid,根据id去服务器请求更加详细的信息;配置路由映射关系,点击进行跳转,带参数传递跳转 itemClick(){ this.$router.push('/detail/'+this.goodsItem.iid) /* this.$router.push({ ...

太狠了,疫情期间面试,一个问题砍了我5000!

疫情期间找工作确实有点难度,想拿到满意的薪资,确实要点实力啊!面试官:Spring中的@Value用过么,介绍一下我:@Value可以标注在字段上面,可以将外部配置文件中的数据,比如可以...

自学编程的 6 个致命误区

嗨,小伙伴们大家好,我是沉默王二。本篇文章来和大家聊聊自学编程中的一些误区——这是我在 B 站上看了羊哥的一期视频后有感而发的文章。因为确实有很多读者也曾私信问过我这些方面的问题,很有代表性,所以我就结合自己的亲身体会来谈一谈,希望对小伙伴们有所启发。 01、追求时髦 所谓基础不牢,地动山摇啊。可很多小伙伴压根就没注意过这个问题,市面上出什么新鲜的技术就想去尝试,结果把自己学的乱七八糟,心灰意冷...

相关热词 c# 按行txt c#怎么扫条形码 c#打包html c# 实现刷新数据 c# 两个自定义控件重叠 c#浮点类型计算 c#.net 中文乱码 c# 时间排序 c# 必备书籍 c#异步网络通信
立即提问