在我当前的项目中,我使用正常的HTTP请求查询PHP,但也通过AJAX查询,我有时返回JSON格式的数据,有时返回普通文本.发生错误时,在正常请求中,您会看到错误消息并可以对其执行某些操作.另一方面,对于AJAX请求,您无法确定是否收到错误或您想要的数据,因为它没有直接显示 - 您只是遇到麻烦,因为您的应用程序将无法再运行.
所以我想到了一个错误处理系统.我最好的想法是在发生错误时发送一个500"内部服务器错误"标题,所以在我的JS中,当我发送一个AJAX-Request时,我可以简单地检查错误并处理它.
不幸的是,PHP本身并没有发送那种标题(就像你有一个解析错误,或者代码中的某些内容出错).
你能:
a)如果发生错误,告诉PHP发送类似500的标题?或者
b)使用set_error_handler发送500头,然后调用PHP常规错误处理?或者
c)当您发生PHP错误时,您可以以任何其他方式发送错误标头吗?
在 npmjs.com 上,库通常提供以如下开头的代码片段
var md5 = require('md5');
Run Code Online (Sandbox Code Playgroud)
但是这种语法已经有一百万年的历史了。我通常复制并粘贴代码并将其转换为
import md5 from 'md5';
Run Code Online (Sandbox Code Playgroud)
ES2016 风格。WebStorm / IntelliJ 中是否有自动执行此操作的快捷方式?或者任何其他不必手动执行此操作的方法?
快速提问:是否可以动态加载内容等
<amp-twitter
data-tweetid="611193269532295168"
layout="responsive">
Run Code Online (Sandbox Code Playgroud)
通过AJAX成AMP文章?
是否有本地运行 AWS Lambda 的开发服务器?我的要求是
nodejs服务器,ruby除了和软件包go之外不需要安装任何东西nodenpmwget/curl或 API 测试工具查询的服务器,以将各种事件发送到js服务器用作 lambda 的文件,并且当我更改该文件时服务器应该重新启动/更新我正在尝试快速编写一个简单的回显服务器。我发现的示例不是功能性的低级示例,还是用Objective-c编写的。
我在很多事情上都失败了,我将从头开始。我无法使用更高级别的功能创建一个简单的套接字CFSocketCreate。我最终得到的是:
class EchoServer : NSObject, NSStreamDelegate
{
private var serverSocket: CFSocketRef?
func start()
{
self.serverSocket = CFSocketCreate(kCFAllocatorDefault, AF_INET, SOCK_STREAM, 0, 2, &self.acceptConnection, NSNull())
}
func acceptConnection(socket: CFSocketRef, type: CFSocketCallBackType, address: CFDataRef, data: UnsafePointer<Void>, info: UnsafeMutablePointer<Void>)
{
// Accept connection and stuff later
}
}
Run Code Online (Sandbox Code Playgroud)
我是xcode / objectivec / swift的新手,甚至在理解错误消息时也遇到了困难。上面的代码让我简单地
EchoServer.swift:31:93:'(CFSocketRef,类型:CFSocketCallBackType,地址:CFDataRef,数据:UnsafePointer,信息:UnsafeMutablePointer)->()'不能转换为'@lvalue inout $ T10'
我什至无法做到这一点。
我有一个redux像这样的小中间件
import { hashHistory } from 'react-router'
import { REDIRECT_TO_LOGIN_REDIRECT_URL } from '../actions/login-redirect';
export default store => next => action => {
if (action.type === REDIRECT_TO_LOGIN_REDIRECT_URL) {
hashHistory.push(store.getState().loginRedirectUrl);
}
return next(action)
}
Run Code Online (Sandbox Code Playgroud)
我现在想测试。正如您在第 1 行中看到的,我正在导入hashHistory并稍后使用它。这是我想测试的(对 的调用hashHistory)。要做到这一点,我将不得不 mock hashHistory,但我不知道如何。我正在使用jest:
import { REDIRECT_TO_LOGIN_REDIRECT_URL } from '../actions/login-redirect';
import redirectMiddleware from './redirect-after-login';
describe('redirect after login middleware', () => {
function setup() {
const store = {
subscribe: () => {},
dispatch: () => {},
getState: …Run Code Online (Sandbox Code Playgroud) 如何在带有TypeScript的React中键入动态标签?给出以下代码:
interface CompProps {
tag: string;
}
const MyComponent: React.FunctionComponent<CompProps> = ({
tag = "div",
children
}) => {
const Wrapper = tag;
return <Wrapper>{children}</Wrapper>;
};
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
类型'{children:ReactNode; }”与类型“ IntrinsicAttributes”没有共同的属性。ts(2559)
在我看来,我必须添加适当的类型,但是我无法弄清楚哪个类型。
是否可以在 Google Maps (API v3) 的自定义叠加层上监听鼠标悬停事件?一个简单的例子:
function HWPMarker(map, coords, text) { […] }
HWPMarker.prototype = new google.maps.OverlayView();
HWPMarker.prototype.draw = function() { […] }
HWPMarker.prototype.onAdd = function() {
$(this.getPanes().overlayLayer).append(this.marker); // this.marker is a div
// THIS IS WHERE I TRY TO LISTEN TO THE MOUSEOVER EVENT
google.maps.event.addListener(this, 'mouseover', function(){ alert('mouseover') });
}
Run Code Online (Sandbox Code Playgroud)
难道我做错了什么?或者无法在自定义叠加层上监听鼠标悬停?
使用ES2015,我是否可以从外部解决承诺,即在创建承诺后触发解决方案?
喜欢
const promise = new Promise();
promise.then(() => foo());
promise.resolve(); // foo() gets executed
Run Code Online (Sandbox Code Playgroud) 出于理智的原因,我需要有一个具有函数作为对象键的对象,例如:
function a() {}
function b() {}
const obj = {
[a]: b
}
Run Code Online (Sandbox Code Playgroud)
这样做的原因是我想将函数的值映射a到函数,b并且能够再次记住和删除映射。
现在我想知道如何在 TypeScript 中为此编写类型。如果我做
type MapFunctions = { [key: Function]: Function };
Run Code Online (Sandbox Code Playgroud)
我会得到错误
Run Code Online (Sandbox Code Playgroud)An index signature parameter type must be 'string' or 'number'.ts(1023)
但是我将如何为此编写类型?
我有一个文本区域,您可以在其中编写PHP和HTML(或技术上的任何其他内容).您可以通过提交表单在浏览器中预览您的代码,我想做的是eval()代码(从而显示).现在,eval似乎不接受<?php ?>给定字符串中的PHP-Tags().我读了许多帖子,建议调用eval之类的
eval(' ?>'.$_POST['markup']);
Run Code Online (Sandbox Code Playgroud)
但是我已经工作了一次,但它不再起作用了.我得到一个PHP打开/关闭标记的行的语法错误.
是否还有一种方法来eval()包含PHP开始和结束标记的字符串?
我正在尝试通过 webpack 2 开发服务器在开发中提供静态文件(图像)。我似乎无法让它发挥作用。这将是我的 webpack 文件,我正在为文件夹中包含图像的 Angular 2 应用程序提供服务/src/assets/images:
var path = require('path');
var webpack = require('webpack');
var HtmlWebpackPlugin = require('html-webpack-plugin');
var helpers = require('./helpers');
module.exports = {
entry: {
'polyfills': './src/polyfills.ts',
'app': './src/main.ts',
},
resolve: {
extensions: ['.ts', '.js']
},
module: {
rules: [
{
test: /\.ts$/,
loaders: [{
loader: 'awesome-typescript-loader',
options: { configFileName: helpers.root('src', 'tsconfig.json') }
} , 'angular2-template-loader']
},
{
test: /\.html$/,
loader: 'html-loader'
},
{
test: /\.(png|jpe?g|gif|svg|woff|woff2|ttf|eot|ico)$/,
loader: 'file-loader?name=assets/[name].[ext]'
},
{
test: /\.scss$/,
exclude: …Run Code Online (Sandbox Code Playgroud) ecmascript-6 ×2
import ×2
php ×2
typescript ×2
ajax ×1
amp-html ×1
angular ×1
aws-lambda ×1
embed ×1
es6-promise ×1
events ×1
jestjs ×1
jquery ×1
node.js ×1
promise ×1
reactjs ×1
sockets ×1
socketserver ×1
swift ×1
unit-testing ×1
webpack ×1
webpack-2 ×1
webstorm ×1
xcode ×1