在我的葡萄/Rails应用程序中,我已经在ApplicationController中实现了维护模式,所以当该模式处于活动状态时,它将从应用程序中的任何位置重定向到maintenance_mode_path。如何迫使rspec在一段时间内处于不同的端点。api/v1/new_endpoint,而整个测试是在MaintenanceModeController中进行的?
maintenance_mode_controller_spec
context 'when maintenance mode is active' do
context 'when current
我试图在Rails中的API控制器上运行一个单元测试。但它的行为并不像我想的那样。
这条线适用于:
post '/api/sessions', params
然而,这一行
post :create, params
将抛出错误
Failure/Error: post :create
URI::InvalidURIError:
bad URI(is not URI?): http://www.example.com:80create
我可以使用第一个语法,但最好知道为什么第二个语法不起作用?因为我记得在以前的项目中使用过这个语法,而且它可以工作。我不记得在我的RSpec配置
我正在尝试测试我的SessionsCotroller,并编写了以下内容:
describe "POST create session" do
it "should create a new session" do
params = { session: { email: 'email@example.com', password: 'foobar' } }
post '/api/signin', params
respo
如果我们使用javascript的http请求函数:
var request = new XMLHttpRequest();
对于https地址,这是使用任何类型的加密,还是MITM能够看到我们发送的所有数据?
示例:
function createAuthToken(baseRestURL, callback) {
var APIPath = "account/api/session";
var CORSPath = "https://cors-anywhere.herokuapp.com/";
var completeRestURL
我正在写一个应用程序与Rails,这将有REST API。除非用户已被授权,否则大多数控制器都是不可访问的。这是通过在控制器的before_action钩子中插入一个检查用户特权的方法来实现的。我想测试未经授权的用户不能访问API的某些部分。目前我是这样做的:
需要“rails_helper”
RSpec.describe RoomsController, type: :controller do
...
describe "while unauthenticated" do
before do
logout
end
def exp
使用Rspec,我正在尝试为我的API创建一个控制器规范,以及一个请求规范。问题是我不明白测试的哪一部分在每个规范中。
为简单起见,假设我的控制器如下所示:
class Api::V1::ItemsController < ApplicationController
def index
if params[:user_id]
user = User.find(params[:user_id])
@items = user.items
else
@items = Item.all
end
end
end
它使用RABL来呈
Rails文件
应用程序/控制器/应用程序_控制器。
class ApplicationController < ActionController::Base
# ...
end
app/控制器/api_application_控制员.app
class ApiApplicationController < ActionController::API
# ...
end
app/控制器/物联网应用程序_控制器
class IotApplicationController < ApiApplicationController
# ...
end
app/控制器/物联
我对woocommerce和Ionic都很陌生,并试图创建一个以woocommerce为后端的应用程序--我已经在项目中实现了基于get请求的rest,但无法使用我试图为post请求request.the编写的post woocommerce create order api函数实现apis,如下所示。
postOrder(postparams){
var headers = new Headers();
headers.append("Accept", 'application/json');
headers
在遵循了eBay的API指南来显示落在指定价格范围内的固定价格项目后,结果仍然显示了该范围外不同价格的基于拍卖的项目。我逐字遵循了他们的教程,所以我不确定我做错了什么。
代码:
<div id="api"></div>
<script>
function _cb_findItemsByKeywords(root)
{
var items = root.findItemsByKeywordsResponse[0].searchResult[0].item || [];
var html = [];
html.push('&
我正在Rails中创建一个应用程序接口,并且我使用来处理版本。我想测试API控制器,但我无法创建有效的请求。
我的控制器:
class Api::V1::ItemsController < Api::V1::BaseController
def index
render json:'anything'
end
end
我的规格:
describe Api::V1::ItemsController do
describe "#create" do
it "shows items" do
get
我使用Ember 3.17并试图设置Ember数据,以便使用JSONAPIAdapter进行服务器调用,但是我始终得到以下错误:
Error: Assertion Failed: You made a 'findRecord' request for a 'user' with id 'current', but the adapter's response did not have any data
我的适配器出了什么问题吗?
下面查找我的适配器、路由和这个调用的预期数据(我已经建立了一个模型,只有一个属性)。唯一有点奇怪的是我的端点是
在对请求规范执行请求之前,我如何设置请求头?
我正在移动控制器规范,以便使用Rails请求API上的规范。我坚持的一件事是,我无法访问request对象来允许请求。
在我的控制器规范中,我可以访问我创建的方法,该方法对特定用户进行签名:
def sign_in(user)
token = user.api_keys.first.token
# note the request object being used in the next line
request.env["HTTP_AUTHORIZATION"] = ActionController::HttpAut