2017-02-12 1 views
-1

나는 클라이언트 측 웹 애플리케이션을 직접 mysql 서버에 연결한다는 아이디어를 모색했다.클라이언트 측 (브라우저) 자바 스크립트를 원격 mysql 서버에 연결하기위한 기술 제한 사항이 있습니까?

백엔드 웹 애플리케이션을 프록시로 사용할 수 없으며 mysql http 플러그인을 사용할 수 없습니다.

웹에 대한 간략한 조사에서 일반적인 합의는 할 수 없거나 시도해서는 안된다는 것입니다.

기술적 인 제한 사항이 있습니까? MySql은 네트워크 포트에서 수신 대기하고 있으며 어떤 종류의 클라이언트가 연결되어 있는지 신경 쓰지 않아야합니다. 클라이언트가 브라우저에서 실행할 수있는 순수한 자바 스크립트로 작성되지 않는 이유는 무엇입니까? TCP 소켓에 연결하고 다른 mysql GUI와 마찬가지로 데이터를 보내는 자바 스크립트 코드를 작성할 수 있습니까?

이 아이디어를 더 자세히 탐색해야한다면 관심이 있으십니까?

+2

만약 당신이 어떻게 든이 작업을하게된다면 (보안상의 이유로 모든 현대적인 브라우저에서는 불가능합니다 - 임의의 IP 및 포트에 대한 클라이언트 측 연결을 상상할 수없는 악몽입니다), 모든 클라이언트는 데이터베이스를 읽고 쓸 수있는 자격 증명. – CollinD

+0

또한 백엔드 서버 측 프로그램을 사용할 수있는 이유는 무엇입니까? 확실하게 어딘가에서 클라우드에 Java 또는 PHP 웹 애플리케이션을 호스팅 할 수 있습니까? –

+0

@TimBiegeleisen, 인터넷에 접속할 수없는 회사 인트라넷에 컴퓨터가있는 클라이언트가 있습니다. 그것은 그의 기계에서 움직이는 무언가 여야합니다. 그는 mysql에 연결하여 쿼리를 실행하고 결과를 얻는 작은 애플리케이션을 원한다. 정말 간단한 프로젝트이므로 Qt에서 데스크톱 응용 프로그램을 생각하고 있었지만 Qt에 익숙하지 않아서 HTML 파일을 두 번 클릭하여 호출 할 수있는 웹 응용 프로그램으로 사용할 가능성을 모색하고있었습니다. 나는 그의 기계에 XAMP를 설치할 수는 있지만, 그것은 복잡 할 것이다. –

답변

1

수 없습니다. MySQL은 MySQL 네트워크 프로토콜을 사용하는 클라이언트의 연결 만 허용하고 웹 브라우저에서 실행되는 Javascript는 HTTP 연결 만 할 수 있습니다. (WebSockets에 대해 궁금해하는 사람들은 HTTP의 하위 집합이므로 임의의 네트워크 연결을 만드는 데 사용할 수 없습니다.

어떤 경우에도 Javascript 웹에 데이터를 로컬로 저장하려는 경우 응용 프로그램, 당신은 MySQL이 필요하지 않습니다. IndexedDB API을 사용하여 브라우저에 직접 데이터를 저장할 수 있습니다.

1

당신은 자바 스크립트/HTML/CSS에서 데스크톱 응용 프로그램 생성하는 전자를 사용할 수 있습니다 전자의 요구 사항을 따라 가면서, 그 다음 http://electron.atom.io

을 기본 MySQL을 사용, 서버에 연결하는 NPM에서 모듈을 Node.js를

관련 문제