Ajax留言板

简介:

一个简易的Ajax-PHP-Vue留言板,这个作品练手用的,很早之前就已经实现出来了,最近两天学习使用Vue框架,所以对前端进行了重写,并且想发出来共同交流学习一下。

特性:

  1. 前后端分离
  2. Vue+axios

安装教程

  1. 导入SQL/comment.sql
  2. 修改ajax.php中的数据库连接信息
  3. 开始使用

仓库链接:

https://gitee.com/7gugu/ajax-comment-vue

软件截图:

联系方式:

Email:gz7gugu@qq.com

[笔记]Steam acceptOffer 403

引言:

这两天帮别人开发了一个自动接收报价的脚本.重新使用SteamBot API的时候,发现API的AcceptOffer函数始终无效,故花了一些时间,琢磨出了解决的办法.(也希望给后来者留下一些帮助)

问题:

原始的代码下,直接向steamcommunity.com/tradeoffer/0000/accept发送请求,Steam就会返回403 forbidden的回应.

解决:

cookie中加入sessionid即可,php中可使用这样子,重新组合一下cookie再发起链接,即可修复该bug.

[笔记]Java报错Local variable XX defined in an enclosing scope …

今天写JAVA代码的时候,碰见了一个这么个报错,由于解决方法第一次知晓,故在此留下笔记。

原代码:

for(int i = 0; i < tabName.length; i++) {
  Btn = new JButton(tabName[i]);
  Btn.setPreferredSize(new Dimension(
    100, 25));
  Btn.addActionListener(new ActionListener() {
      @Override 
      public void actionPerformed(ActionEvent e) {
            tabObj.setSelectedIndex(i); //BUG 
      } 
    }); 
  panel.add(Btn); 
}

原因:

在BUG标识处,我由于使用了一个匿名的未知范围的变量,JAVA编译器就抛出了错误”Local variable i defined in an enclosing scope must be final or effectively final“。

解决方案:

for(int i = 0; i & amp; lt; tabName.length; i++) {
  Btn = new JButton(tabName[i]);
  Btn.setPreferredSize(new Dimension(100, 25));
  final int j = i; //通过这个转换,把一个无范围的匿名变量转换成final变量 //FIX 
  Btn.addActionListener(new ActionListener(){ 
      @Override 
      public void actionPerformed(ActionEvent e){ 
        tabObj.setSelectedIndex(j);//FIX 
      } 
    }); 
  panel.add(Btn); 
}

通过使用final int j这个中间变量,java8的编译器就会认为j是一个常量,是安全可用的,因此就不会抛出上述错误,故解决。