问题标签 [json-server]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jquery - jQuery Ajax Post 更改对象结构
今天,我第一次使用 Ajax,遇到了一个奇怪的问题。在使用 jQuery 发出 Ajax 'POST' 请求时,它会创建一些奇怪的语法。我在其他问题中没有找到答案,实际上,我也不知道我应该寻找什么。
使用 Postman,我将其用作“POST”请求的主体:
当我GET
用来获取对象(没有 Ajax)时,它完全返回这个。但是,当我使用POST
Ajax 并通过与GET
其他对象相同的方法获取它时,我会收到以下信息:
我的 jQuery 代码如下所示:
到目前为止我已经尝试过:
- 使用
dataType: "json"
- 使用
contentType: 'application/json'
(导致来自 json-server 的 500 错误)
所以我的问题是:这是什么?
为什么 Ajax 会这样创建它?
我访问这样的代码:
json-server - 如何将 json-server 的选项设置为模块?
假设我们有以下命令行来运行 json-server ( https://github.com/typicode/json-server ):
json-server db.json --routes routes.json --port 8008 --delay 1000
如果我们将 json-server 作为模块运行,我们如何设置这些选项?我可以看到定义的 db.json 和定义的端口。但目前尚不清楚如何定义其余选项。
javascript - Angular JS数据响应未定义
我是 Angular JS 的新手,正在尝试使用 JSON 数据调用 Rest API。当我运行 HTTP-server 时,没有取回我的响应数据。
javascript - 如何在 azure 中托管 json-server
我是软件领域的新手,请耐心等待我的问题和技术术语的错误:
前提:- 我使用 Angular4 开发了一个前端应用程序。在 Angular 应用程序中定义的 baseURL 是“ http://localhost:3000/ ”。我的应用程序使用 restangular api 与 json-server 交互(我创建了一个名为 json-server 的文件夹,它有 db.json 和 public 文件夹)。当我使用命令启动 json-server 时,它工作得很好: json-server json-server --watch db.json
我的应用程序已完成,因此我创建了一个生产版本。此后,我将所有文件从 dist 文件夹移动到 json-server 的 public 文件夹。当我启动 json-server 时,我的应用程序工作正常。
实际问题:- 现在我想在 azure 中托管。我只是从 json-server 文件夹中复制了所有文件/文件夹(db.json 和公用文件夹),并将它们放在天蓝色的云中。完成 azure 托管并在浏览器中打开 url 时出现错误-“您无权查看”。
为了纠正上述错误,我从 azure 中删除了所有文件,然后我复制了 dist 文件夹的所有文件并将它们放在 azure 云中。使用它,我可以在浏览器中看到应用程序,但看不到图像。在图像有一个错误 - 响应状态:0 对于 URL:null
当我在本地启动 json-server 时,一切正常,但当然,当从其他机器打开相同的网页时,我得到了同样的错误 - 响应状态:0 对于 URL:null
有什么方法可以在 azure 中运行 json-server,以便所有机器/移动设备在访问 url 时都能看到正确的网页而不会出现任何错误。
angularjs - 不支持 user.json 中的“id”(数字)类型。使用 json-server 时使用对象或对象数组出错,为什么?
我正在开发一个 Angular 4 应用程序。我正在尝试从 JSON 文件中获取数据以构建用户仪表板。
我创建了一个 json 文件并尝试使用 JSON 服务器加载它:$ json-server --watch user.json
我收到以下错误:
不支持 user.json 中的“id”(数字)类型。使用对象或对象数组。.
当我删除文件中的“id”字段时,我得到与“name”相同的错误。
我觉得我创建 json 文件的方式有问题。我是 Web 开发的新手,所以不要介意这是一个非常根本的错误。
这是我的 json 文件:
angular - 当 anuglar 在 stackblitz 上访问 my-json-server 时出现关于 CORS 的错误
在 stackblitz 上,我构建了一个 Angular 项目来访问my-json-server
模拟服务器。
它在这里。
单击Send Request
按钮后,我在控制台上收到以下错误:
无法加载https://my-json-server.typicode.com/typicode/demo/posts/1:请求的资源上不存在“Access-Control-Allow-Origin”标头。因此, Origin ' https://angular-http-test-cors.stackblitz.io ' 是不允许访问的。如果不透明的响应满足您的需求,请将请求的模式设置为“no-cors”以获取禁用 CORS 的资源。
该错误要求我将请求的模式设置为“no-cors”。
但是如何实现呢?
我应该更改 my-json-server 上的配置吗?但是怎么做?
我可以改变我的程序吗?
更新:20180314
我今天试了一下。什么都没做,现在可以工作了。诡异的!
php - 使用 ajax、php 和 json 服务器发布请求时出现错误 404
如标题中所述,我收到此错误
jquery.min.js:3049 POST http://localhost:3000/php/add_events.php 404(未找到)
当我尝试在 json-server 上使用该代码访问 php 文件时:
当我尝试设置 GET 而不是 POST 时,它可以工作,但不能发布(正常)。
这是php代码:
是我试图发布并进入同一个 php 文件引起的问题吗?
或者是别的什么 ?
mocking - 如何在 json-server 请求中找到 request.headers?
我试图让我的模拟 API(json-server)以一种方式响应,如果客户端AUTH_TOKEN
在他的请求的标头中发送了一个,如果他没有,则以另一种方式响应。这段代码是我正在使用的,它来自 json-server 文档。
当然这可行,除了该isAuthorized(req)
函数需要检查请求标头。我的isAuthorized
函数如下所示(伪)。
这不起作用,因为req
没有getHeader
方法,但我的意图很明确 - 我需要检查令牌,如果它存在则返回 true,否则返回 false。
我怎样才能做到这一点?
req.headers
返回以下内容。
这与我在实际请求中发送的标头没有任何关系。
javascript - json-server 使用中间件添加只读路由
在我的 json-server 设置中,我想设置一个只读路由。
db.json
因此,我没有在文件中设置该路由,而是使用中间件(名为middleware.js
):
所以我运行它给:
json-server --watch db.json --middlewares middleware.js
问题是,尽管if
触发了阻止并且我可以看到console.log
消息,但响应的正文将始终为空。
angularjs - json-server - 跨源请求仅支持协议方案:http、data、chrome、chrome-extension
我正在运行一个快速服务器来在端口 8000 上为我的 angularJS 应用程序提供服务。我正在使用我的一个$http.get
内部服务来访问 API。
我正在使用json-server在 3000 上托管 API。当我在浏览器中输入 URL 时,我得到了 JSON 服务。但是当我打开应用程序时,在 devtools 中显示以下错误:
XMLHttpRequest 无法加载 localhost:3000/techData。跨源请求仅支持协议方案:http、data、chrome、chrome-extension、https。
这是 angularjs 服务:
我看到了这个问题并了解到 json-server 允许跨源请求。