这可能是一个愚蠢的问题,但我有一个晚上.在我正在开发RESTful API的应用程序中,我们希望客户端以JSON格式发送数据.此应用程序的一部分要求客户端上载文件(通常是图像)以及有关图像的信息.
我很难跟踪单个请求中如何发生这种情况.是否可以将文件数据Base64转换为JSON字符串?我是否需要向服务器发送2个帖子?我不应该为此使用JSON吗?
作为旁注,我们在后端使用Grails,这些服务由本机移动客户端(iPhone,Android等)访问,如果其中任何一个有所不同.
我有下面的代码,我想将外部"行"div的"井"元素居中.我尝试了各种方法,例如text-align:center(它只是文本的中心而不是内部DIV元素.
这是一个jsfiddle.我的想法是,我得到了一块"好"的瓷砖,并且在4个左右之后它就会被包裹起来.但如果它小于4,它们应该显示在页面的中心.
<body class="container-fluid">
<div class="row">
<div class="well span2">
<div class="row">
<div class="span2">
Header
</div>
</div>
<div class="row">
<div class="span2">
Sub Header
</div>
</div>
</div>
<div class="well span2">
<div class="row">
<div class="span2">
Header
</div>
</div>
<div class="row">
<div class="span2">
Sub Header
</div>
</div>
</div>
</div>
</body>
Run Code Online (Sandbox Code Playgroud) 我正在学习Electron并使用多个窗口和IPC.在我的主脚本中,我有以下内容:
var storeWindow = new BrowserWindow({
width: 400,
height: 400,
show: false
});
ipc.on('show-store-edit', function(event, store) {
console.log(store);
storeWindow.loadURL('file://' + __dirname + '/app/store.html');
storeWindow.show();
});
Run Code Online (Sandbox Code Playgroud)
在我的主窗口的脚本中,我在商店列表中的click事件中有以下内容:
$.getJSON("http://localhost:8080/stores/" + item.id).done(function(store) {
ipc.send('show-store-edit', store);
});
Run Code Online (Sandbox Code Playgroud)
在控制台上,我从我的服务器打印商店数据.我不清楚的是如何将数据放入视图中storeWindow:store.html
.我甚至不确定我是否正确处理事件序列,但它们将是:
要么
在后者中,我不确定如何获得从storeWindow's
脚本中获取存储所需的ID .
尝试将Intellij IDEA从2016.2升级到2016.2.5,我收到此错误:
IDEA没有对/ private/var/folders/_q/7md3pcy10x9cxjdt9nzxjvdr0000gn/T/AppTranslocation/97E0DA6A-73B2-4439-91AE-F7DD0353F063/d/IntelliJ IDEA.app/Contents的写访问权限
我无法修改该文件夹的权限,因为它是只读的.我试着chown
和chmod
作为根,无论其工作.
我今天一直在行李箱里工作,现在我需要对行李箱进行一些改动并将它们移到分支机构中.我还没有做出任何这些改变.但我需要创建一个分支然后将这些文件放入该分支.我不知道该怎么做.
我正在使用redux-form
模糊验证.在我将第一个字符输入到输入元素后,它会失去焦点,我必须再次单击它才能继续输入.它只对第一个字符执行此操作.后续字符类型仍然是焦点.这是我的基本签到形式示例:
import React, { Component } from 'react';
import { connect } from 'react-redux';
import { Field, reduxForm } from 'redux-form';
import * as actions from '../actions/authActions';
require('../../styles/signin.scss');
class SignIn extends Component {
handleFormSubmit({ email, password }) {
this.props.signinUser({ email, password }, this.props.location);
}
renderAlert() {
if (this.props.errorMessage) {
return (
<div className="alert alert-danger">
{this.props.errorMessage}
</div>
);
} else if (this.props.location.query.error) {
return (
<div className="alert alert-danger">
Authorization required!
</div>
);
}
}
render() {
const { message, …
Run Code Online (Sandbox Code Playgroud) 我有一个模板存在于views/dashboard/_myTemplate.gsp下,从DashboardController我可以简单地调用
render template:'myTemplate'
Run Code Online (Sandbox Code Playgroud)
一切都很好.我需要从不同的控制器渲染此模板,但渲染方法不允许您指定控制器,我似乎无法弄清楚如何定义模板存在的路径以使渲染正常工作.这甚至可能吗?
在我的Grails服务中,我有如下代码:
def createCharge(chargeParams) {
try {
def charge = Charge.create(chargeParams)
} catch (CardException e) {
throw e
}
}
Run Code Online (Sandbox Code Playgroud)
从我的控制器我执行以下操作:
try {
service.createCharge(chargeParams)
} catch(CardException e) {
}
Run Code Online (Sandbox Code Playgroud)
但是,我的控制器没有捕获重新抛出的CardException.如果我通过以下方法在RuntimeException中包装CardException:
throw new RuntimeException(e)
Run Code Online (Sandbox Code Playgroud)
和/或从catch中删除签名只是捕获(e)而不键入它,它可以工作,但是我从异常中丢失了一些信息,比如消息.
作为注释,CardException是一个Exception,而不是RuntimeException.我不确定这是否重要.
我升级到IDEA 14(从13),当我尝试运行我的grails 2.2.0应用程序时,我收到以下错误:
FAILURE: Build failed with an exception.
* Where:
Build file '/Users/gdboling/Projects/GenRocket/web/build.gradle' line: 92
* What went wrong:
A problem occurred evaluating root project 'web'.
> No such property: environment for class: org.gradle.api.internal.project.DefaultProject_Decorated
Run Code Online (Sandbox Code Playgroud)
似乎IDEA正在尝试将我的build.gradle用作grails构建过程的一部分.IDEA 13没有这样做.我将build.gradle用于项目的其他一些非grails相关任务.
如果我一起删除build.gradle文件,我收到此错误:
FAILURE: Build failed with an exception.
* What went wrong:
Task 'grails-run-app' not found in root project 'web'.
* Try:
Run gradle tasks to get a list of available tasks. Run with --stacktrace option to get the stack trace. Run with --info …
Run Code Online (Sandbox Code Playgroud) 我正在使用axios
react/redux应用程序,当我收到401,404等错误时,我当前必须为每个动作函数处理它们,当我调用axios时.我有一个axios_config.js,我用一些常见的习语包裹了axios调用.例如:
// need to move this to app config
const BASE_URL = 'http://localhost:8080/api/';
function config() {
return {
headers: {'X-Token-Auth': localStorage.getItem('token')}
}
}
export function fetchData(url) {
return axios.get(`${BASE_URL}${url}`, config());
};
Run Code Online (Sandbox Code Playgroud)
我正在努力的是401,404等常见错误.目前,我这样做:
export function fetchBrands() {
return function(dispatch) {
dispatch({type:FETCHING_BRANDS});
fetchData('brands')
.then(response => {
dispatch({
type: FETCH_BRANDS_SUCCESS,
payload: response
});
})
.catch(err => {
// deal with errors
});
}
}
Run Code Online (Sandbox Code Playgroud)
但在catch
街区,我不想每次都要处理401,404等.因此,我需要能够在更全局范围内处理这些问题,但仍然能够处理请求的特定错误,例如服务器端验证错误.
grails ×4
reactjs ×2
redux ×2
axios ×1
branch ×1
center ×1
electron ×1
exception ×1
file-upload ×1
gsp ×1
json ×1
macos ×1
macos-sierra ×1
react-redux ×1
redux-form ×1
rest ×1
svn ×1
validation ×1