小编Gam*_*ids的帖子

将POST请求正文通过Amazon API Gateway传递给Lambda

我有一个用Java编写的AWS Lambda函数,它由AWS API Gateway调用触发.

我正在尝试POST使用JSON作为有效负载向其中一个端点发出请求.

curl -H "Content-Type: application/json" -X POST -d '{"firstName":"Mr", "lastName":"Awesome"}' https://someexample.execute-api.eu-central-1.amazonaws.com/beta/MethodHandlerLambda
Run Code Online (Sandbox Code Playgroud)

然后网关将检测Content-Type,并通过一个缺省传递所有请求参数(包括人体)的模板.有趣的是这一部分

#set($allParams = $input.params())
{
"body-json" : $input.json('$'),
 ....
Run Code Online (Sandbox Code Playgroud)

它应该向我提供一个Map<String, Object>传递给我的Java方法:

public void myHandler(Map<String, Object> input, Context context){
    input.keySet().forEach((key) -> {
        System.out.println(key + " : " + input.get(key));
    });
}
Run Code Online (Sandbox Code Playgroud)

结果应该是这样的:

body-json : {"firstName":"Mr", "lastName":"Awesome"}
...
Run Code Online (Sandbox Code Playgroud)

但我得到的是这样的:

body-json : {firstName=Mr, lastName=Awesome}
Run Code Online (Sandbox Code Playgroud)

另一种可能性是将整个身体作为字符串传递:

"body" : $input.body
Run Code Online (Sandbox Code Playgroud)

但那又是"转换" key=value而不是key:value

我如何配置模板只是简单地传递给我身体,以便我可以在JSON解析器中使用它?

java json amazon-web-services aws-lambda aws-api-gateway

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

WebRTC 网络摄像头约束不适应设备方向

我正在用 html 和 javascript(实际上是 Angular 1.x)实现一个拍照应用程序。该应用程序主要用于 Android 平板电脑,但也用于手机和 Windows 计算机。

我的问题
当用户翻转平板电脑(纵向/横向)时,相机也会“翻转”。这意味着,当您以横向模式握住平板电脑时,相机也处于横向模式,而当您翻转平板电脑时,相机处于纵向模式。但是系统会保留摄像机的参数widthheight参数。

在此处输入图片说明

如果我只在何处显示视频,这不会有太大问题,但我需要复制图像、裁剪、缩放等。所以我需要确保相机的width实际上是width.

我的实现
为了给你一个想法,我试图提取负责相机的代码:

// I have a static array with possible camera resolutions
private resolutions = [
    {width: 320, height: 240},
    {width: 600, height: 480}
];

// and the camera constraints that I initialize like this
this.constraints = {
    audio: false,                  // no audio needed
    video: {
        facingMode: "environment", // I want the back camera
        width: …
Run Code Online (Sandbox Code Playgroud)

html javascript android webrtc

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

如何在SoundPool中停止所有声音?

我正在使用SoundPoolAndroid上的游戏播放sfx声音.在大多数情况下,它完美地工作,除了有时我需要立即停止所有声音而 不是暂停(如果设置为循环与否则无关紧要).我无法弄清楚如何在不知道声音的情况下停止播放StreamID声音.我知道的:

  • soundpool.load(... 一些声音 ...... )返回一个soundID
  • soundpool.play(soundID)播放声音并返回streamID
  • soundpool.stop(streamID)停止声音

我的问题是,如何在不知道streamID的情况下停止声音?我尝试跟踪列表中的所有streamID,但有时会有很多短流同时播放,它无法正常工作.我找不到任何方法SoundPool来获取活动的streamID.有谁知道如何停止所有声音?任何提示都表示赞赏!谢谢

android soundpool

7
推荐指数
1
解决办法
5144
查看次数

Andengine:OnAreaTouched和OnSceneTouched之间的目标

嗨,大家好,

在我用AndEngine开发的游戏中,有很多精灵在跑来跑去.现在每个精灵都TouchArea注册了一个场景,因为我在触摸时会显示一些关于精灵的信息.场景本身有一个OnSceneTouchListener用于移动相机和缩放的场景.

我的问题是,每次用户移动摄像装置(由某处触摸显示屏和周围移动他的手指)的OnAreaTouched()任何精灵的方法,那就是意外的手指下,被调用,当运动结束(指被解除) .我已经将触发事件限制在event.getAction()==UP(在它被称为touchAreas的真正混乱之前),但这还不够.如果用户正在缩放或移动相机,则不应激活精灵touchAreas.

有什么方法可以区分OnAreaTouched-event和OnSceneTouched-event?哪一个被称为第一个,我可以压制另一个吗?

这是我的OnSceneTouched()方法(简化):

public boolean onSceneTouchEvent(Scene scene, final TouchEvent event) {
    boolean isZooming = event.getMotionEvent().getPointerCount() >= 2;
    if (event.getAction() == MotionEvent.ACTION_DOWN) {
        // REMEMBER FIRST TOUCHPOINT, TO KNOW IN WHICH DIRECTION TO MOVE
        this.touchPoint = new Point(event.getMotionEvent().getX(), event.getMotionEvent().getY());  
    } else if (event.getAction() == MotionEvent.ACTION_MOVE) {
        if (isZooming) {
            // DO SOME ZOOM STUFF
        } else {
            // DO SOME MOVEMENT STUFF
        }
        return …
Run Code Online (Sandbox Code Playgroud)

java android game-engine andengine

6
推荐指数
1
解决办法
4815
查看次数

如何使用JPA保留两个实体

我在我的webapp中使用JPA,我无法弄清楚如何持久保存两个彼此相关的新实体.这是一个例子:

这是两个实体

+-----------------+   +--------------------+
|     Consumer    |   |   ProfilePicture   |
+-----------------+   +--------------------+
| id    (PK)      |---| consumerId (PPK+FK)|
| userName        |   | url                |
+-----------------+   +--------------------+

消费者有一个ID和其他一些价值观.该ProfilePicture使用消费者ID,因为它是自己的主键和外键.(因为如果没有消费者,ProfilePicture将不存在,并且不是每个消费者都有ProfilePicture)

我使用NetBeans生成实体类和会话bean(外观).

简而言之,这就是它们的样子

Consumer.java

@Entity
@Table(name = "Consumer")
@NamedQueries({...})
public class Consumer implements Serializable {

    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    @Basic(optional = false)
    @Column(name = "id")
    private Integer id;

    @Basic(optional = false)
    @NotNull
    @Size(min = 1, max = 50)
    @Column(name = "userName")
    private String userName; …
Run Code Online (Sandbox Code Playgroud)

java jpa javabeans

6
推荐指数
1
解决办法
4165
查看次数

AndEngine GLES 2 - 黑屏,没有错误

我正在使用AndEngine GLES 2为Android编写游戏.一切都工作正常 - 我有一个背景图像,有精灵移动甚至一些音乐 - 直到最近我尝试了一些新的东西(我希望能够在两个不同的场景之间切换)当显示变黑.

我仍然可以执行游戏并且没有显示错误.我在游戏过程中显示的所有日志条目都显示出来,即使音乐正在播放,所以我知道游戏"正常"运行,但我看不到任何图像.没有.全黑.

所以我想,在出现这个"错误"之前将一切都改回来,就可以了.但屏幕仍然是黑色的.

我甚至尝试评论所有内容,但背景图片 - 没有.

现在,如果问的不是太多,请问任何人都可以查看这段简短的代码并告诉我那里有什么问题?

这是我使用的变量:

private SmoothCamera camera;
private BitmapTextureAtlas bitmapTextureAtlas;  
private Scene scene;
private Sprite background;
Run Code Online (Sandbox Code Playgroud)

EngineOptions我从来没有改变过,所以他们应该是好的.

@Override
public EngineOptions onCreateEngineOptions() {
    float positionX = 80f; // horizontal (x) position of the camera
    float positionY = 280f; // vertical (y) position of the camera
    float velocityX = 200f; // velocity of the horizontal camera movement
    float velocityY = 200f; // velocity of the vertical …
Run Code Online (Sandbox Code Playgroud)

java android andengine andengine-gles-2

5
推荐指数
1
解决办法
3790
查看次数

仅选择多次出现的一个条目

假设我有一个看起来像这样的表:

id fk value
------------
1  1  'lorem'
2  1  'ipsum'
3  1  'dolor'
4  2  'sit'
5  2  'amet'
6  3  'consetetur'
7  3  'sadipscing' 

每个fk可以出现多次,对于每个fk,我想选择最后一行(或者更准确地说是具有最高id的行) - 像这样:

id fk value
------------
3  1  'dolor'
5  2  'amet'
7  3  'sadipscing' 

我以为我可以DISTINCT像这样使用关键字:

SELECT DISTINCT id, fk, value 
FROM table
Run Code Online (Sandbox Code Playgroud)

但我不确定哪一行DISTINCT会返回,它必须是最后一行.有什么像()

SELECT id, fk, value 
FROM table 
WHERE MAX(id) 
FOREACH DISTINCT(fk)
Run Code Online (Sandbox Code Playgroud)

我希望我在这里有任何意义:)谢谢你的时间

mysql sql select group-by greatest-n-per-group

4
推荐指数
1
解决办法
8839
查看次数

MySQL with JPA: Illegal mix of collations (utf8mb4_general_ci,IMPLICIT) and (utf8_general_ci,COERCIBLE)

I need to be able to store characters like \xF0\x9F\x94\xA5 in my database, which, according to this post need UTF8mb4 encoding.

So I set up my database with

CREATE DATABASE `myDB` CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci
Run Code Online (Sandbox Code Playgroud)

and verified in the MySQL shell if it was effective:

SHOW FULL COLUMNS FROM myTable;

+---------+------------------+--------------------+----
| Field   | Type             | Collation          | ...
+---------+------------------+--------------------+-----
| id      | int(10) unsigned | NULL               | ...   
| myColumn| text             | utf8mb4_general_ci | ...
+---------+------------------+--------------------+-----
Run Code Online (Sandbox Code Playgroud)

So far …

java mysql jpa glassfish collation

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

如何通过 Facebook 上的广告 API 获取活动列表?

我正在尝试从 Graph API Explorer 获取活动列表。我正在使用在https://developers.facebook.com/docs/marketing-api/reference/ad-account/campaigns/.

GET /v2.8/{ad-account-id}/campaigns HTTP/1.1
Host: graph.facebook.com
Run Code Online (Sandbox Code Playgroud)

我是用于广告的页面的业务经理和管理员。我AD_ACCOUNT_IDs在 Graph API Explorer 上发现了使用以下请求。

GET /v2.8/me/businesses HTTP/1.1
Host: graph.facebook.com
Run Code Online (Sandbox Code Playgroud)

我选择了具有更高特权的那个。

提交第一个活动请求时报告的错误是:

{
    "error": {
        "message": "Unsupported get request. Object with ID '1015359838XXXXXX' does not exist, cannot be loaded due to missing permissions, or does not support this operation. Please read the Graph API documentation at https://developers.facebook.com/docs/graph-api",
        "type": "GraphMethodException",
        "code": 100,
        "fbtrace_id": "DLyfwGbM8fi"
    }
}
Run Code Online (Sandbox Code Playgroud)

怎么了?

提前致谢,

马蒂亚

facebook facebook-graph-api

4
推荐指数
2
解决办法
8108
查看次数

修改Eclipse equals()方法模板

eclipse生成的equals()方法对于if结构没有{}.例如

public boolean equals(Object obj) {
    if (this == obj)
        return true;
    .........
    return true;
}
Run Code Online (Sandbox Code Playgroud)

如何更改以在以下模式中生成代码

public boolean equals(Object obj) {
    if (this == obj){
        return true;
    }
    .........
    return true;
}
Run Code Online (Sandbox Code Playgroud)

java eclipse

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