php - 类型错误 : "Cannot convert string to ByteString because the character at index 519 has value 8230 which is greater than 255."

标签 php reactjs laravel api axios

我目前在 laravel 和 react js 工作。我已经在 laravel 中创建了 api 端点,用于使用 laravel 护照登录注册。现在,当提供 api_token 时,我已经制定了以下路线来获取用户详细信息。

路线

Route::group(['middleware' => 'auth:api'], function(){
    Route::post('details', 'API\UserController@details');
});

这是 Controller ,

Controller
/** 
 * details api 
 * 
 * @return \Illuminate\Http\Response 
 */ 
public function details() 
{ 
    $user = Auth::user(); 
    return response()->json(['success' => $user], $this->successStatus); 
} 

react
import React,{Component} from 'react';
import axios from 'axios';

export default class Home extends Component{
    constructor(props){
        super(props);
        this.state = {
            name: '',
            email: '',
        }
    }
    componentDidMount() {
        axios.get(
            '127.0.0.1:8000/api/details/',
            {
                headers: {
                    'Content-Type':'application/x-www-form-urlencoded',
                    'Authorization':'Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImp0aSI6ImNmMTkxMjQ0ZWVhZmJlZjNmMDljM2ExMDc0MzgwZjE2ZGY2MGY3YTAwOGI0ZmQyZjY4OTI2NWJiZWJlNGIzNTU0ZDNhZGM1ZDNhOTk2ODgzIn0.eyJhdWQiOiIzIiwianRpIjoiY2YxOTEyNDRlZWFmYmVmM2YwOWMzYTEwNzQzODBmMTZkZjYwZjdhMDA4YjRmZDJmNjg5MjY1YmJlYmU0YjM1NTRkM2FkYzVkM2E5OTY4ODMiLCJpYXQiOjE1NDU1ODQ4ODYsIm5iZiI6MTU0NTU4NDg4NiwiZXhwIjoxNTc3MTIwODg2LCJzdWIiOiIxIiwic2NvcGVzIjpbXX0.rRgHTChM8n-3r6syYaH9t0KKQLYLki9_jAsg6UUtX5Y3KUznr8IuAQnPKpuy-6jirEtjB6lG5GA6z7vHonp0YH-dWR3VxRfw_69vf6DfV0Z1yVzqitz7h-zsbC4j…BT_roRITEVusZWogUcpgMrvZs-jbVpfb6DpfNE0RA9ID2t_LSK9wlIc7_LeZFgqwPhBr90aUjpWQNnAfPg8l_DiWWAZLWoSRlYswQ9pQkIwyI-QYfTfIXxAKDdnOTLn7u4cLx1a_lj0IrIudlLPAPI3gqeJWzYYD8e3y7TuQtUv3zvb7rzW-AT6dV2RQO-bzd4OZDraRzrRbhc1qmYy1v0o0FkRxKgIagx69iIjwEyH7wwG08tq9OSptRtviGKZk1cu5T9qywDc4fA61_3lEPPACh_hUgdUc7qOnaKk3mU8nfnonSA0NQzfV_nK9PvGG_NzUQVk4Gei3YEqsUBl-JgofIEO310OBL9cgfa7cFjPMaw90o6XcP9c3abZZFHWGhVJPSrzyLidr_rC2RVhX5M7UvNDxS5Rw-bOWpQiYhd69_-Jk3B92gFWbLk4IBRqkaxGhEmV7netaTkFDF_e0f-R7HjUhicDJe6HQKCBFqzsAwSyax7NoFquWxZeJ4EA',
                    'Accept':'application/json'
                }
            }
        ).then(response => {
            this.setState({
                    name: response.success.name,
                    email: response.success.email
                });
        }).catch(error=>{
            console.log(error);

        });
    }

    render(){
        return(
            <div>
                <h4>Name: {this.state.name}</h4>
                <h4>Email: {this.state.email}</h4>
            </div>
        );
    }
}

当我使用 api_token 发送请求时,出现以下错误。

TypeError: "Cannot convert string to ByteString because the character at index 519 has value 8230 which is greater than 255."

setRequestHeader http://localhost:3000/static/js/bundle.js:876:11

forEach http://localhost:3000/static/js/bundle.js:2339:9

dispatchXhrRequest http://localhost:3000/static/js/bundle.js:870:7

xhrAdapter http://localhost:3000/static/js/bundle.js:762:10

dispatchRequest http://localhost:3000/static/js/bundle.js:1375:10



我做错了什么任何建议/帮助表示赞赏。

最佳答案

我遇到了同样的错误,发现是由于头字符串包含Unicode字符。在上面的例子中,授权包含“…”。

关于php - 类型错误 : "Cannot convert string to ByteString because the character at index 519 has value 8230 which is greater than 255.",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53905825/

相关文章:

php - 在 PHP 中构建包含多个项目和 PayPal 按钮的购物车

php - 我的 mysql 更新查询不起作用

javascript - 在 React 中检索多个子组件的状态

javascript - 使用 react-redux 绑定(bind)事件处理程序 prop

java - 如何使用hibernate连接四个表

php - updateOrCreate() 给出 Column not found : 1054 Unknown column '0' in 'where clause'

reactjs - 禁用和启用按钮的样式

PHP foreach 替换数组内的值

php - Eloquent - Where Date >= date(now) and whereNull ('date' )

javascript - jquery ajax将变量从一个函数获取到另一个php