小编Ada*_*ner的帖子

jQuery在请求体中发布有效的json

因此,根据jQuery Ajax文档,它在发送请求时以查询字符串的形式序列化数据,但设置processData:false应该允许我在正文中发送实际的JSON.不幸的是,我很难确定第一个,如果发生这种情况,那么第二个对象看起来是什么,它被发送到服务器.我所知道的是服务器没有解析我发送的内容.

使用http客户端发布对象文字时{someKey:'someData'},它可以工作.但是当使用jQuery时data: {someKey:'someData'},它会失败.不幸的是,当我在Safari中分析请求时,它说消息有效负载是[object Object]......很棒......而且在Firefox中帖子是空白的...

在Java端记录正文内容时,它实际上[object Object]是如何发送REAL JSON数据的?

有没有人有过在请求体中序列化JSON数据的Java服务的经验,请求是从jQuery发送的?

BTW这里是完整的$ .ajax请求:

$.ajax({
    contentType: 'application/json',
    data: {
        "command": "on"
    },
    dataType: 'json',
    success: function(data){
        app.log("device control succeeded");
    },
    error: function(){
        app.log("Device control failed");
    },
    processData: false,
    type: 'POST',
    url: '/devices/{device_id}/control'
});
Run Code Online (Sandbox Code Playgroud)

ajax jquery json xmlhttprequest

162
推荐指数
1
解决办法
21万
查看次数

无法在'DOMWindow'上执行'postMessage':https://www.youtube.com!== http:// localhost:9000

这是我得到的错误消息:

Failed to execute 'postMessage' on 'DOMWindow': The target origin provided
('https://www.youtube.com') does not match the recipient window's origin 
('http://localhost:9000').
Run Code Online (Sandbox Code Playgroud)

我已经看到了目标来源http://www.youtube.com和收件人来源的其他类似问题https://www.youtube.com,但没有一个像我的目标所在的地方https://www.youtube.com和原点http://localhost:9000.

  1. 我没有遇到问题.问题是什么?
  2. 我该如何解决?

javascript youtube youtube-api angularjs youtube-iframe-api

139
推荐指数
6
解决办法
23万
查看次数

当我在Rails中运行rake db:seed时,US-ASCII(Argument Error)中的字节序列无效

当我rake db:seed在我的Rails应用程序中运行时,我收到此错误:

US-ASCII中的无效字节序列(参数错误)

我只是添加science_majors到我的种子文件,现在当我运行rake db:seed它给我这个错误:

无效的字节序列错误

为什么会这样,我该如何解决?

seed.rb的一部分

@college = College.find_or_create_by_name!('University of Pittsburgh')
if @college.update_attributes(
  url: 'university-of-pittsburgh',
  public: 'Public',
  years: '4-year',
  category: 'National University',
  calendar: 'Semester',
  location: 'Pittsburgh, PA',
  setting: 'Large City (250-500k)',
  retention: '90',
  majors: 'business/marketing: 15%|social sciences: 14%|health professions: 11%|english: 10%|engineering: 9%|psychology: 8%|biology: 7%|history: 5%',
  scholarships_link: 'http://www.oafa.pitt.edu/universityschlrs.aspx',
  map: '<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="https://maps.google.com/maps?f=q&amp;source=s_q&amp;hl=en&amp;geocode=&amp;q=university+of+pittsburgh&amp;aq=&amp;sll=40.444261,-79.970448&amp;sspn=0.142165,0.251656&amp;ie=UTF8&amp;hq=university+of+pittsburgh&amp;t=m&amp;ll=40.443486,-79.958245&amp;spn=0.010798,0.021038&amp;output=embed"></iframe><br /><small><a href="https://maps.google.com/maps?f=q&amp;source=embed&amp;hl=en&amp;geocode=&amp;q=university+of+pittsburgh&amp;aq=&amp;sll=40.431368,-79.9805&amp;sspn=0.142165,0.251656&amp;ie=UTF8&amp;hq=university+of+pittsburgh&amp;t=m&amp;ll=40.443486,-79.958245&amp;spn=0.010798,0.021038" style="color:#0000FF;text-align:left">View Larger Map</a></small>',
  street_view: '<iframe width="425" height="350" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" …
Run Code Online (Sandbox Code Playgroud)

rake ruby-on-rails seeding argument-error

85
推荐指数
5
解决办法
7万
查看次数

如何使用Mongoose从集合中删除所有文档?

我知道怎么...

  • 删除单个文档.
  • 删除集合本身.
  • 使用Mongo删除集合中的所有文档.

但我不知道如何使用Mongoose从集合中删除所有文档.我想在用户点击按钮时执行此操作.我假设我需要向某个端点发送AJAX请求并让端点执行删除操作,但我不知道如何在端点处理删除操作.

在我的示例中,我有一个Datetime集合,我想在用户单击按钮时删除所有文档.

API /日期/ index.js

'use strict';

var express = require('express');
var controller = require('./datetime.controller');

var router = express.Router();

router.get('/', controller.index);
router.get('/:id', controller.show);
router.post('/', controller.create);
router.put('/:id', controller.update);
router.patch('/:id', controller.update);
router.delete('/:id', controller.destroy);

module.exports = router;
Run Code Online (Sandbox Code Playgroud)

API /日期/ datetime.controller.js

'use strict';

var _ = require('lodash');
var Datetime = require('./datetime.model');

// Get list of datetimes
exports.index = function(req, res) {
  Datetime.find(function (err, datetimes) {
    if(err) { return handleError(res, err); }
    return res.json(200, datetimes);
  });
};

// Get …
Run Code Online (Sandbox Code Playgroud)

javascript mongoose mongodb

73
推荐指数
4
解决办法
8万
查看次数

NodeList何时生效,何时是静态的?

从MDN for NodeList:

在某些情况下,NodeList是一个实时集合,这意味着DOM中的更改会反映在集合中.例如,Node.childNodes是实时的:

 var parent = document.getElementById('parent');
 var child_nodes = parent.childNodes;
 console.log(child_nodes.length); // let's assume "2"
 parent.appendChild(document.createElement('div'));
 console.log(child_nodes.length); // should output "3"
Run Code Online (Sandbox Code Playgroud)

在其他情况下,NodeList是静态集合,这意味着DOM中的任何后续更改都不会影响集合的内容.document.querySelectorAll返回一个静态NodeList.

所以....有点烦人!对于哪些方法返回实时列表以及哪些方法返回静态列表,是否有任何中心引用,而无需单独检查DOM API的所有各个部分?这里有什么规则吗?

html javascript nodelist

58
推荐指数
1
解决办法
1万
查看次数

Karma抛出错误:无法加载"ng-html2js",它未注册

我跑的时候遇到错误karma start:

$ karma start
INFO [karma]: Karma v0.10.2 server started at http://localhost:9876/
INFO [launcher]: Starting browser Chrome
WARN [preprocess]: Can not load "ng-html2js", it is not registered!
  Perhaps you are missing some plugin?

...
Run Code Online (Sandbox Code Playgroud)

但是在我的包文件中,"karma-ng-html2js-preprocessor": "*",以及包含此预处理器代码的文件夹node_modules.

关于如何解决问题的任何想法?

angularjs karma-runner ng-html2js

36
推荐指数
3
解决办法
1万
查看次数

使用 Rails 6,你把“页面特定”的 JavaScript 代码放在哪里?

我的问题与使用 Rails 3.1相同,您将“特定于页面的”JavaScript 代码放在哪里?,仅适用于 Rails 6 而不是 Rails 3.1。

假设我有一些 JavaScript 想要用于我的帖子索引页面。我把那个文件放在哪里,我如何包含它?

在上一个问题中,答案通常使用 Rails Asset Pipeline。但是,对于 Rails 6,我的理解是它使用 webpacker 而不是 JavaScript 文件的 Asset Pipeline。

注意:我不希望始终包含该文件。例如。如果我在作者索引页上,我不希望包含帖子索引页的 JavaScript 文件。为什么?想象一下,我$('li').on('click', changeColor);在 JS 文件中拥有帖子索引页面。我可能不希望该代码在作者索引页上运行,但如果包含该文件,它就会运行。您可以通过命名空间来解决这个问题,但我认为不包含不必要的文件会更干净(并且性能更高)。

ruby-on-rails webpacker ruby-on-rails-6

21
推荐指数
2
解决办法
5734
查看次数

你可以用ui-sref使用ng-click吗?

我可以这样做吗?

<button ng-click='vm.foo()' ui-sref='state'>test</button>
Run Code Online (Sandbox Code Playgroud)

angularjs angular-ui-router

19
推荐指数
1
解决办法
2万
查看次数

$ watch vs. ngChange

假设您想要在$scope更改属性时执行某些操作.并说这个属性绑定到一个input字段.使用$watch与使用相比有哪些优点/缺点ngChange

HTML

<input ng-model="foo" ng-change="increment()">
<p>foo: {{foo}}</p>

<!-- I want to do something when foo changes.
     In this case keep track of the number of changes. -->
<p>fooChangeCount: {{fooChangeCount}}</p>
Run Code Online (Sandbox Code Playgroud)

JS

// Option 1: $watch
$scope.$watch('foo', function() {
  $scope.fooChangeCount++;
});

// Option 2: ngChange
$scope.fooChangeCount = 0;
$scope.increment = function() {
  $scope.fooChangeCount++;
};
Run Code Online (Sandbox Code Playgroud)

http://plnkr.co/edit/4xJWpU6AN9HIp0OSZjgm?p=preview

我知道有时您需要使用$watch(如果您要观看的值未绑定到输入字段).我理解有时你​​需要使用ngChange(当你想要做一些事情来响应输入的变化,但不一定是为了响应范围属性的变化).

但是,在这种情况下,两者都完成了同样的事情.

我的想法:

  • ngChange 看起来更干净,更容易理解正在发生的事情.
  • $watch似乎它可能会稍微快一点,但可能可以忽略不计.有了ngChange,我认为Angular必须在编译阶段做一些额外的工作来设置事件监听器,并且可能额外的事件监听器会降低速度.无论您是否使用ngChange,摘要周期都会根据更改运行,因此您有机会收听某些内容并调用函数以响应更改.

javascript performance angularjs

15
推荐指数
1
解决办法
5324
查看次数

window.location.href不起作用

我的网站是http://www.collegeanswerz.com/.我正在使用rails.该代码用于搜索大学.我希望用户能够输入大学名称,单击输入,然后转到网址,而不是查看搜索结果(如果用户正确输入名称.如果不是,我想显示搜索结果) .我正在使用"a"和"stackoverflow.com"作为占位符,而我试图让它工作.

我正在使用window.location.href基于此:如何在JavaScript/jQuery中重定向到另一个网页?

JavaScript的

$("#search_text").submit(function() {
    if ($("#search_field").val() == "a")
    {
        window.location.href = "http://stackoverflow.com";
        alert('worked');
    }
});
Run Code Online (Sandbox Code Playgroud)

布局文件

<%= form_tag("/search", :method => 'get', :id => 'search_text', :class => 'form_search') do -%> 
    <div id="search"> <%= search_field_tag :search, params[:search], :placeholder => 'enter college', :id => "search_field", :class => 'input-medium search-query' %></div> 
<% end -%>
Run Code Online (Sandbox Code Playgroud)

static_pages_controller.rb

def search
  @colleges = College.search(params[:search])
end
Run Code Online (Sandbox Code Playgroud)

警报正在运行,它告诉我if语句中的内容应该被执行.但它带我到正常的搜索结果而不是stackoverflow.com.为什么是这样?

jquery ruby-on-rails window.location

14
推荐指数
1
解决办法
10万
查看次数