Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过jsonreststore通过身份验证将dojo.grid绑定到restful服务_Javascript_Json_Rest_Dojo_Dojox.grid.datagrid - Fatal编程技术网

Javascript 通过jsonreststore通过身份验证将dojo.grid绑定到restful服务

Javascript 通过jsonreststore通过身份验证将dojo.grid绑定到restful服务,javascript,json,rest,dojo,dojox.grid.datagrid,Javascript,Json,Rest,Dojo,Dojox.grid.datagrid,我搜索了一会儿这个问题,但找不到太多关于它的信息 在我的javascript应用程序中,我试图通过jsonreststore和dgrid可视化restful后端的数据 这就是我到目前为止得到的: <script> function getRequest(args) { return { url: 'http://myworkingapiwithevents/events',

我搜索了一会儿这个问题,但找不到太多关于它的信息

在我的javascript应用程序中,我试图通过jsonreststore和dgrid可视化restful后端的数据

这就是我到目前为止得到的:

    <script>
        function getRequest(args) {
            return {
                url: 'http://myworkingapiwithevents/events',
                handleAs: 'json',
                sync: false,
                headers: {
                    'Authorization': 'Basic HriB5jsHUib2K='
                }
            }
        }

        require(["dojo/store/JsonRest", "dojo/rpc/JsonService"], function (JsonRest, JsonService) {            
            service = new JsonService('http://myworkingapiwithevents/events', true /*isJson*/, undefined /*schema*/, getRequest);
            myStore = new JsonRest({ service: service });
        });

        require(["dojox/grid/DataGrid", "dojo/data/ObjectStore", "dojo/domReady!"
        ], function (DataGrid, ObjectStore) {
            grid = new DataGrid({
                store: dataStore = new ObjectStore({ objectStore: myStore }),
                structure: [
                    { name: "Event", field: "name", width: "200px" }
                ]
            }, "grid3");
            grid.startup();
        });
    </script>

可能是跨域问题吗?我知道我的后端服务支持跨域。

您不需要使用dojo/rpc/JsonService。请尝试以下方法:

require(["dojo/store/JsonRest", "dojox/grid/DataGrid", "dojo/data/ObjectStore", "dojo/domReady!"], function (JsonRest, DataGrid, ObjectStore) {
        var restStore = new JsonRest({
            target : 'http://myworkingapiwithevents/events',
            headers: {'Authorization': 'Basic HriB5jsHUib2K='}
        });
        var dataStore = new ObjectStore({ objectStore : restStore });
        grid = new DataGrid({
            store: dataStore,
            structure: [
                { name: "Event", field: "name", width: "200px" }
            ]
        }, "grid3");
        grid.startup();
});
require(["dojo/store/JsonRest", "dojox/grid/DataGrid", "dojo/data/ObjectStore", "dojo/domReady!"], function (JsonRest, DataGrid, ObjectStore) {
        var restStore = new JsonRest({
            target : 'http://myworkingapiwithevents/events',
            headers: {'Authorization': 'Basic HriB5jsHUib2K='}
        });
        var dataStore = new ObjectStore({ objectStore : restStore });
        grid = new DataGrid({
            store: dataStore,
            structure: [
                { name: "Event", field: "name", width: "200px" }
            ]
        }, "grid3");
        grid.startup();
});