小编rak*_*btg的帖子

使用axios发送持有者令牌

在我的反应应用程序中,我使用axios来执行REST api请求.

但它无法使用请求发送Authorization标头.

这是我的代码:

tokenPayload() {
  let config = {
    headers: {
      'Authorization': 'Bearer ' + validToken()
    }
  }
  Axios.post( 
      'http://localhost:8000/api/v1/get_token_payloads',
      config
    )
    .then( ( response ) => {
      console.log( response )
    } )
    .catch()
}
Run Code Online (Sandbox Code Playgroud)

这里的validToken()方法只是从浏览器存储中返回令牌.

所有请求都有500错误回复说

无法从请求中解析令牌

从后端.

如何使用每个请求发送授权标头?你会推荐其他任何反应模块吗?

rest token access-token reactjs axios

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

Vagrant找不到盒子

我在Windows 10上安装了VirtualBox 5.0.14和vagrant 1.8.1.

当我尝试添加一个盒子时,它给了我这个错误:

命令: $ vagrant box add ubuntu/trusty64

错误:

无法在远程目录中找到或无法访问"ubuntu/trusty64"框.如果这是HashiCorp的Atlas上的私人包装盒,请确认您已登录 vagrant login.另外,请仔细检查名称.扩展的URL和错误消息如下所示:

网址:[" https://atlas.hashicorp.com/ubuntu/trusty64 "]错误:

对这个问题有什么想法吗?

ubuntu vagrant windows-10

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

电子应用程序无法找到sqlite3模块

在我的电子应用程序中,我已经通过npm安装了sqlite3

npm install sqlite3
Run Code Online (Sandbox Code Playgroud)

但是一旦我尝试与数据库交互它无法找到数据库,这里是日志:

未捕获错误:找不到模块'D:\ play\electron-quick-start \node_modules\sqlite3\lib\binding\electron-v1.3-win32-x64 \node_sqlite3.node'

这是JS代码:

console.log('whooooo');

var sqlite3 = require('sqlite3').verbose();
var db = new sqlite3.Database('../db/info.db');

db.serialize(function () {
    db.run("CREATE TABLE lorem (info TEXT)");   

    var stmt = db.prepare("INSERT INTO lorem VALUES (?)");
    for (var i = 0; i < 10; i++) {
        stmt.run("Ipsum " + i);
    }
    stmt.finalize();

    db.each("SELECT rowid AS id, info FROM lorem", function (err, row) {
        console.log(row.id + ": " + row.info);
    });
});
db.close();
Run Code Online (Sandbox Code Playgroud)

我也试着这样:

npm install sqlite3 --build-from-source
Run Code Online (Sandbox Code Playgroud)

但它无法安装!

另外,我使用的是Python3.如何安装模块以使用电子?

sqlite node.js npm electron

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

在Laravel 5.3 REST中验证错误消息为JSON

我的应用程序通过POSTapi端点的请求创建新条目.

现在,如果任何验证失败,则laravel 5.3将请求重定向到主页,而不是返回错误json.

这是我的控制器:

public function create( Request $request )
{
    $organization = new Organization;

    // Validate user input
    $this->validate($request, [
        'organizationName' => 'required',
        'organizationType' => 'required',
        'companyStreet' => 'required'
    ]);

    // Add data 
    $organization->organizationName = $request->input('organizationName');
    $organization->organizationType = $request->input('organizationType');
    $organization->companyStreet = $request->input('companyStreet');
    $organization->save();
    return response()->json($organization);
}
Run Code Online (Sandbox Code Playgroud)

如果验证没有问题,那么实体将成功添加到数据库中,但如果验证请求存在问题,则不会将所有错误消息作为json响应发送,而是重定向回主页.

我如何将验证返回类型设置为json,因此对于每个请求,如果验证失败,则laravel将默认将所有错误消息作为json发送.

rest laravel laravel-5 laravel-5.3

9
推荐指数
1
解决办法
2572
查看次数

使用Laravel JWT定制有效负载

我使用Laravel 5.3和laravel jwt作为令牌,这里是控制器使用的命名空间列表.

use JWTAuth;
use App\Http\Requests;
use Illuminate\Http\Request;
use Tymon\JWTAuth\Facades\JWTFactory;
use Tymon\JWTAuth\Exceptions\JWTException;
Run Code Online (Sandbox Code Playgroud)

我需要添加自定义有效负载数据来生成令牌.

以下是我尝试使用自定义有效负载生成令牌的方法.

        $payloadable = [
            'id' => $tokenPayload->id,
            'name' => $tokenPayload->name,
            'email' => $tokenPayload->email,
            'deleted_at' => $tokenPayload->deleted_at,
            'created_at' => $tokenPayload->created_at,
            'updated_at' => $tokenPayload->updated_at,
            'organization' => $request->organization_id
        ];

        // Generate the token.
        $token = JWTAuth::encode( JWTFactory::make( $payloadable ) );

        // Return token.
        return response()->json( [ 'token' => $token ] );
Run Code Online (Sandbox Code Playgroud)

但在回复中,令牌是空的!这是回复

{
  "token": {}
}
Run Code Online (Sandbox Code Playgroud)

为什么它返回一个空令牌而不是一个jwt令牌!

更新:

现在我可以\JWTFactory命名空间之前使用a来获取令牌,但是我将如何获得更新的令牌值?

我想要实现的是在现有令牌中添加一些额外的字段,在阅读Laravel JWT-auth doc之后,我发现我需要创建另一个令牌,该令牌会有其他字段,但新令牌不会返回其他字段.

php jwt laravel laravel-5 laravel-5.3

7
推荐指数
3
解决办法
3768
查看次数

在 Summernote 中使用 &lt;br&gt; 而不是 &lt;p&gt; ?

需要<br>在 Summernote 编辑器中使用标签,而不是<p>在用户点击 Enter 按钮时使用,所以这是我的代码:

var $this = $(this),
    box = $('textarea.CommentsFields');
box.summernote({
    height: 100,
    focus: true,
    toolbar: [
        [ 'all', [ 'bold', 'strikethrough', 'ul', 'ol', 'link' ] ],
        [ 'sided', [ 'fullscreen' ] ]
    ],
    callbacks: {
        onEnter: function(){
            box.summernote('insertNode', document.createTextNode("<br>")); 
            console.log('uiwdbvuwecbweuiuinsjk');
        }
    }
});
Run Code Online (Sandbox Code Playgroud)

我编写了 onEnter 事件的自定义回调,当用户点击返回按钮时,它会引发回调,并编写<br>不是我正在寻找的标签。

结果截图

我阅读了他们的文档,但无法理解如何停止输入按钮的默认操作并写入<br>标签而不是将元素包装在<p>标签中。

任何的想法?谢谢

html javascript jquery wysiwyg summernote

6
推荐指数
2
解决办法
9875
查看次数

节点模块在 React 和 Electron 实现中不起作用

我正在使用 React 构建一个简单的电子应用程序,我需要使用os.homedir方法来获取用户的主目录。

这是我的反应组件,

import React, { Component } from 'react'
import Os from 'os'

export default class Item extends Component {

  constructor( props ) {
    super( props )
  }

  render () {
    return (
      <div className='item-component'>
        { Os.homedir() }
      </div>
    )
  }

}
Run Code Online (Sandbox Code Playgroud)

但似乎 Electron 没有利用 Node js 的 os 模块。因此

未捕获的类型错误:_os2.default.homedir 不是函数

发生错误。

os我没有导入模块,而是使用了该require方法,但没有成功。

let Os = require( 'os' )
Run Code Online (Sandbox Code Playgroud)

如何在 Electron 和 React 设置中使用节点模块?

将项目添加到 GitHub https://github.com/rakibtg/ElectronThisIsReact

您可以克隆它来测试......

javascript node.js reactjs electron

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

PHP爆炸并将其分配给多维数组

我想爆炸两次字符串并制作一个多维数组.

$data = "i love funny movies \n i love stackoverflow dot com \n i like rock song";
$data = explode("\n", $data);
Run Code Online (Sandbox Code Playgroud)

所以a print_r($data);输出:

Array
(
    [0] => i love funny movies 
    [1] =>  i love stackoverflow com 
    [2] =>  i like rock song
)
Run Code Online (Sandbox Code Playgroud)

现在,如果我喜欢这样:

$line_data = explode(" ", $data); // explode $data variable by spaces.
Run Code Online (Sandbox Code Playgroud)

a print_r($line_data);会给我这个:

Array
(
    [0] => i
    [1] => love
    [2] => funny
    [3] => movies
    [4] => 
    [5] => i …
Run Code Online (Sandbox Code Playgroud)

php arrays explode multidimensional-array

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

使用 htaccess 访问公共和私有目录

我网站的目录结构是这样的:

  • 万维网/
    • 网站/
      • 包括/
      • 民众/

在此处输入图片说明
inc(include) 目录用于包含所有重要且安全的 PHP 文件,通常用户无法访问这些文件,但只有公共目录中的 php 代码可以访问 inc 目录。
在公共目录中,我将拥有所有公共文件和页面。
我听说它是​​一个更好的安全系统,我想使用 file.conf 来做到这一点.htaccess
假设我.htaccessPSite目录中有一个文件,我如何将PSite 的请求重定向到/public/index.html以便用户无法访问inc目录?我正在尝试使用此代码,但它不适用于公共目录中的其他文件和文件夹。

RewriteEngine On
RewriteRule ^$ /public/index.php [L]
Run Code Online (Sandbox Code Playgroud)

请注意,我已使用 httpd.conf 和 Windows 主机文件
HTTPD Conf更改了路径:localhost/PSite with psite.dev

<VirtualHost 127.0.0.1>
   ServerName psite.dev
   DocumentRoot "C:\wamp\www\PSite"
</VirtualHost>
Run Code Online (Sandbox Code Playgroud)


谢谢

php security .htaccess

3
推荐指数
1
解决办法
3252
查看次数

使用表单数据添加laravel CSRF令牌

通过wysiwyg编辑器上传图像时,我需要传递Laravel CSRF令牌FormData().但它似乎失败了,或者它没有使用该append()方法添加csrf令牌.

这是我的代码:

  function uploadImage( image ) {
    var data = new FormData();
    data.append( "image", image );

    data.append( "csrfToken", Laravel.csrfToken ); // <- adding csrf token
    // Laravel.csrfToken will return the csrf token.

    console.log( data.entries() );
    $.ajax ({
      data: data,
      type: "POST",
      url: "/article/store/image",
      cache: false,
      contentType: false,
      processData: false,
      success: function(url) {
        var image = IMAGE_PATH + url;
          $( '#editor' ).summernote( "insertImage", image );
        },
        error: function( data ) {
          console.log( data );
        }
    }); …
Run Code Online (Sandbox Code Playgroud)

javascript php laravel laravel-5 laravel-5.3

3
推荐指数
1
解决办法
5915
查看次数