我试图实现这样的目标
namespace CoreAPI.Controllers
{
[Route("api/[controller]")]
public class ValuesController : Controller
{
// GET api/values
// GET api/values/5
[HttpGet("{id}")]
public string Get(int id)
{
return "value";
}
[HttpGet]
public string GetValue(string name,string surname)
{
return "Hello " + name;
}
}
}
Run Code Online (Sandbox Code Playgroud)
我想通过使用这两个 URL 来调用这个控制器方法:
考虑以下Oracle查询:
SELECT psn_id, nvl(psn_name_lang, psn_name_kurz) psn_name, cli_code, cli_id, cli_cmp_id, p2.pat_value cli_domain
FROM tabl_psn_obj, table_cli, table_pat p1, table_pat p2
WHERE psn_id = p1.pat_psn_id
AND p1.pat_value = to_char(cli_cmp_id)
AND p1.pat_att_id = 3
AND p2.pat_att_id(+) = 48 <---- what does this mean
AND p2.pat_psn_id = psn_id
AND p2.pat_value = i_domain
AND cli_cmp_id = i_cmp_id;
Run Code Online (Sandbox Code Playgroud)
我对他的(+)操作员感到困惑.据我所知,这(+)是一个快捷方式OUTER JOIN,取决于你把它放在哪一侧,它表示一个LEFT或RIGHT OUTER JOIN.
但在上面的查询中,左外连接具有一些常量值,而不是任何其他表ID.这是什么意思?PostgreSQL中的类似之处是什么?
也许这个问题可以概括,但我不理解具有恒定值的含义.
我正在使用 AWS lambda 无服务器 WEB API 应用程序。我的控制器有一种方法可以简单地返回一些字符串值。我想添加一个对请求者进行身份验证的身份验证层。请求者应将“Authorizer”密钥传递给标头以进行身份验证。
我创建了一个 Custom Authorizer lambda 来验证在 API 请求标头中传递的用户。但是当我点击 API URL 时,我的自定义授权器没有调用。下面是我的自定义授权方 lambda 函数代码
public APIGatewayCustomAuthorizerResponse FunctionHandler(APIGatewayCustomAuthorizerRequest apigAuthRequest, ILambdaContext context)
{
Console.WriteLine("1");
bool ok = false;
if (apigAuthRequest.Headers["Authorization"] == "test")
{
ok = true;
Console.WriteLine("2");
}
return new APIGatewayCustomAuthorizerResponse
{
PrincipalID = "test",
PolicyDocument = new APIGatewayCustomAuthorizerPolicy
{
Version = "2012-10-17",
Statement = new List<APIGatewayCustomAuthorizerPolicy.IAMPolicyStatement>() {
new APIGatewayCustomAuthorizerPolicy.IAMPolicyStatement
{
Action = new HashSet<string>(){"execute-api:Invoke"},
Effect = ok ? "Allow" : "Deny",
Resource …Run Code Online (Sandbox Code Playgroud)