HTTP 在 Meteor 生产应用程序上返回错误 500,但在本地主机上返回 200

标签 http meteor

我从今天开始使用MeteorJs,我正在尝试使用HTTP包来加载外部内容。

这是我的服务器端代码:

if (Meteor.isServer) {
  Meteor.methods({
    makeRequest: function (url) {
      return HTTP.call("GET", url);
    }
  });
}

在客户端,我尝试发出 2 个请求:一个直接来自客户端,另一个来自服务器方法:

var url = "http://www.gutenberg.org/cache/epub/6133/pg6133.txt";

// Make a request from the client
Meteor.http.call("GET", url, function(err, result) { 
  console.log("-- CLIENT SIDE --");
  console.log("err : ", err);
  console.log("result : ", result);
});

// Make a request from server 
Meteor.call('makeRequest', url, function(err, result) {
  console.log("-- SERVER SIDE --");
  console.log("err : ", err);
  console.log("result : ", result);
});

在本地主机上,服务器端工作正常。但是在我得到的服务器上:

enter image description here

问题#1:如何轻松调试服务器?

问题#2:对于这个 URL ( http://www.gutenberg.org/cache/epub/6133/pg6133.txt ),当您第一次调用服务器到一个新的 URL ( http://www.gutenberg.org/ebooks/6133?msg=welcome_stranger ) 时,我有一个重定向。这可能是导致错误的原因,但我该如何处理?

最佳答案

调试服务器端的最佳方法是使用:

meteor logs <site>

关于HTTP 在 Meteor 生产应用程序上返回错误 500,但在本地主机上返回 200,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33636170/

相关文章:

javascript - 无法在 Meteor 中加载 Favicon

http - 在 Struts 2 中处理错误页面

html - 为什么刷新浏览器图像响应状态是 200,而不是 304?

javascript - 更新返回错误

date - 如何缩短望远镜应用程序中的日期?

ios - 你能把一个页面变成 meteor 中的一个应用程序吗?

c# - HTTP 连接问题

HTTP 400 - 描述最少的错误代码难以理解

android - Ionic - HTTP POST 请求不适用于 native Android 但适用于 Ionic Devapp

facebook - Nitrous 上的 meteor - 无法使用 loginWithFacebook 工作