我是一个新手来回应和cassandra。我只是想通过使用“npm i cassandra-driver”连接到cassandra数据库。
我有一个main.js文件,其中我使用了cassandra驱动程序代码。
Main.js
import 'babel-polyfill';
import 'whatwg-fetch';
import React from 'react';
import ReactDOM from 'react-dom';
import FastClick from 'fastclick';
import { Provider } from 'react-redux';
import store from './core/store';
import router from './core/router';
import history from './core/history';
const cassandra = require('cassandra-driver');
const client = new cassandra.Client({ contactPoints: ['127.0.0.1'], keyspace: 'excelsior'});
console.log("client---->",client);
const query = 'SELECT * FROM playlists';
client.execute(query, [], function(err, result) {
console.log("err----->",err);
console.log("result----->",result);
assert.ifError(err);
//console.log('got user profile with email ' + result.rows[0].email);
});
let routes = require('./routes.json'); // Loaded with utils/routes-loader.js
const container = document.getElementById('container');
function renderComponent(component) {
ReactDOM.render(<Provider store={store}>{component}</Provider>, container);
}
// Find and render a web page matching the current URL path,
// if such page is not found then render an error page (see routes.json, core/router.js)
function render(location) {
router.resolve(routes, location)
.then(renderComponent)
.catch(error => router.resolve(routes, { ...location, error }).then(renderComponent));
}
continued code ......
我正在获取客户端控制台,但之后我收到类似
的错误connection.js:122 Uncaught TypeError: net.Socket is not a constructor(…)
我在这里遗漏了什么。或者这段代码应该写在其他任何地方。 ?
由于
答案 0 :(得分:1)
cassandra-driver
意味着在Node.js服务器上运行,而不是在客户端(即浏览器)中运行。
因此,您需要为您的客户端代码(使用React,Redux或其他)创建某种Node.js服务器以进行通信。例如,在典型的Web应用程序设置中,浏览器中的客户端代码将为:
cassandra-driver
获取该呼叫的相应数据这是对事物设置方式的一个非常简单的简化,但这种类型的通信对于许多Web应用程序来说很常见,无论他们是使用Cassandra,Postgres还是服务器上的任何数据库。