sitestudio / otest

Test SKGithubTest app
MIT License
0 stars 0 forks source link

MP #290

Open sitestudio opened 1 month ago

sitestudio commented 1 month ago

Provide a C# example of calling a POST method from the App Catalog group STUDENTPUB

skgithubtest[bot] commented 1 month ago

Here is a bash script that creates a C# file with the code to call the POST method from the App Catalog group STUDENTPUB:

#!/bin/bash

# Creating a directory for the C# project
mkdir StudentPubEventPoster
cd StudentPubEventPoster

# Create the C# file
cat > Program.cs << EOF

using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;

public class Program
{
    public static void Main(string[] args)
    {
        PostEvent().GetAwaiter().GetResult();
    }

    static async Task PostEvent()
    {
        // Create Http Client
        HttpClient client = new HttpClient { BaseAddress = new Uri("https://[YourAPIurl]") };

        // Sample event object to be posted
        var myEvent = new 
        { 
            array = new[] 
            { 
                new 
                { 
                    eventType = "EventName",
                    subject = "EventSubject",
                    eventTime = "2020-06-27 00:00:00",
                    id = "831e1650-001e-001b-66ab-eeb76e069631",
                    data = new { primaryKey = "987654321", zoneId = "2282", actionType = "I" },
                    dataVersion = "1.0",
                } 
            }
        };

        // Convert object to json
        var json = JsonConvert.SerializeObject(myEvent);

        // Post the event
        var response = await client.PostAsync("/event-api/events",
            new StringContent(json, Encoding.UTF8, "application/json"));

        // Print the response
        Console.WriteLine("Response: {0}", await response.Content.ReadAsStringAsync());
    }
}
EOF
echo "C# file created successfully."

To run this bash script, please save it as create_csharp_file.sh, give it the execution permission using chmod +x create_csharp_file.sh, and then run it by calling ./create_csharp_file.sh.

This script will create a new C# file named Program.cs under a new directory StudentPubEventPoster.

Please note:

This C# program sends an HTTP POST request to the "/event-api/events" endpoint of the STUDENTPUB API provided by App Catalog. The request is made in a JSON format containing a sample event object. The program then logs the response from the server.