Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/433.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 带ParseServer的Express-无法连接到<;知识产权>;端口1337,连接超时_Javascript_Node.js_Express_Parse Platform_Centos7 - Fatal编程技术网

Javascript 带ParseServer的Express-无法连接到<;知识产权>;端口1337,连接超时

Javascript 带ParseServer的Express-无法连接到<;知识产权>;端口1337,连接超时,javascript,node.js,express,parse-platform,centos7,Javascript,Node.js,Express,Parse Platform,Centos7,我在centos 7的自定义服务器上配置了解析服务器。当从这个服务器运行curl命令时,它的工作状态良好。命令提示测试它的工作状态,但当尝试使用curl从本地系统终端调用它时,它的连接超时。 我还尝试用我的PHPSDK代码来实现这一点 以下是parse server index.js文件:--- var express=require('express'); var ParseServer=require('parse-server')。ParseServer; var path=require

我在centos 7的自定义服务器上配置了解析服务器。当从这个服务器运行curl命令时,它的工作状态良好。命令提示测试它的工作状态,但当尝试使用curl从本地系统终端调用它时,它的连接超时。 我还尝试用我的PHPSDK代码来实现这一点

以下是parse server index.js文件:---

var express=require('express');
var ParseServer=require('parse-server')。ParseServer;
var path=require('path');
var databaseUri=process.env.DATABASE_URI | process.env.MONGODB_URI;
if(!databaseUri){
log('DATABASE_URI未指定,返回到localhost');
}
var api=新的解析服务器({
databaseURI:databaseURI | |'mongodb://localhost:27017/dev',    
cloud:process.env.cloud_CODE_MAIN | | u dirname+'/cloud/MAIN.js',
appId:process.env.APP|u ID | |'myAppId',
masterKey:process.env.MASTER|u KEY | |“”,//在此处添加您的主密钥。请保守秘密!
serverURL:process.env.SERVER|URL | |‘http://:1337/parse’,//如果需要,请不要忘记更改为https
liveQuery:{
classNames:[“Employee”]//支持查询订阅的类列表,此数据库集合直接用于客户端
}
});
//解析服务器不需要javascript键或.NET键等客户端键
//如果需要,可以在上面的初始化中将其设置为选项:
//javascriptKey、restAPIKey、dotNetKey、clientKey
var-app=express();
//为/public文件夹中的静态资产提供服务
app.use('/public',express.static(path.join(uu dirname,/public'));
//在/Parse URL前缀上提供解析API
var mountPath=process.env.PARSE|u MOUNT | |'/PARSE';
应用程序使用(安装路径、api);
//解析服务器可以很好地处理其余的web路由
app.get('/',函数(req,res){
res.status(200).send('我梦想成为一个网站。请在GitHub上启动解析服务器repo!');
});
//服务器url的/test路径上将有一个可用的测试页面
//在启动应用程序之前删除此项
app.get('/test',函数(req,res){
res.sendFile(path.join(_dirname,'/public/test.html');
});
//Web端点
//app.get('/',homeController.index);
//get('/about',aboutController.index);
var port=process.env.port | | 1337;
var httpServer=require('http').createServer(应用程序);
侦听(端口,函数(){
log('parse-server-example在端口'+port+'上运行);
});
//这将启用实时查询服务器
createLiveQueryServer(httpServer);
我的Php代码:-

<?php

require 'autoload.php';

use Parse\ParseClient;
use Parse\ParseObject;
use Parse\ParseQuery;
//use Parse\ParseACL;
//use Parse\ParsePush;
//use Parse\ParseUser;
//use Parse\ParseInstallation;
use Parse\ParseException;
//use Parse\ParseAnalytics;
//use Parse\ParseFile;
use Parse\ParseCloud;

try {
    ParseClient::initialize("myAppId", "", "", true);
    // Users of Parse Server will need to point ParseClient at their remote URL and Mount Point:
    ParseClient::setServerURL('http://<ip address>:1337', 'parse');

//Save data start
    $gameScore = new ParseObject("GameScore");

    $gameScore->set("score", 1337);
    $gameScore->set("playerName", "zakir");
    $gameScore->set("cheatMode", false);


    $gameScore->save();
    echo 'New object created with objectId: ' . $gameScore->getObjectId();
} catch (Exception $ex) {
    // Execute any logic that should take place if the save fails.
    // error is a ParseException object with an error code and message.
    echo 'Failed to create new object, with error message: ' . $ex->getMessage();
}

如果您可以直接从服务器上的提示符连接到服务器,但不能从本地终端连接到服务器,则问题可能是某些防火墙问题(使用centos时可能会出现这种情况)或解析过程未在正确的接口上侦听

请检查绑定httpServer时使用的ip地址。我假设它没有绑定到正确的接口上。要检查哪些服务正在哪个接口上侦听,请尝试以下操作:

netstat -an | grep LISTEN
如果在端口号
1337
中看到类似
localhost
127.0.0.1
的内容,则必须使用要绑定的正确IP启动服务器。您可以将其作为附加参数传递,如下所示:

httpServer.listen(port, ip, function() { /* ... */ });

请注意,您可能还必须调整解析配置的
serverURL
属性以匹配正确的地址

如果您可以直接从服务器上的提示符连接到服务器,但不能从本地终端连接到服务器,则问题可能是某些防火墙问题(使用centos时可能会出现这种情况)或解析过程未在正确的接口上侦听

请检查绑定httpServer时使用的ip地址。我假设它没有绑定到正确的接口上。要检查哪些服务正在哪个接口上侦听,请尝试以下操作:

netstat -an | grep LISTEN
如果在端口号
1337
中看到类似
localhost
127.0.0.1
的内容,则必须使用要绑定的正确IP启动服务器。您可以将其作为附加参数传递,如下所示:

httpServer.listen(port, ip, function() { /* ... */ });
请注意,您可能还必须调整解析配置的
serverURL
属性以匹配正确的地址

http://:1337/parse
http://:1337/parse